基于S3C2440的Linux内核移植和yaffs2文件系统制作--启动系统

发布者:美梦小狮子最新更新时间:2019-03-07 来源: eefocus关键字:S3C2440的  Linux  内核移植  yaffs2  文件系统 手机看文章 扫描二维码
随时随地手机看文章

第三章 启动系统

将前面两章生成的内核映像文件和根文件系统映像文件下载到mini2440开发板,查看启动信息。我成功移植启动信息如下:

VIVI version 0.1.4 (root@capcross) (gcc version 2.95.3 20010315 (release)) #0.1.4 Mon Oct 27 10:18:15 CST 2008

MMU table base address = 0x33DFC000

Succeed memory mapping.

DIVN_UPLL0

MPLLVal [M:7fh,P:2h,S:1h]

CLKDIVN:5h

 

 

+---------------------------------------------+

| S3C2440A USB Downloader ver R0.03 2004 Jan  |

+---------------------------------------------+

USB: IN_ENDPOINT:1 OUT_ENDPOINT:3

FORMAT:

NOTE: Power off/on or press the reset button for 1 sec

      in order to get a valid USB device address.

 

NAND device: Manufacture ID: 0xec, Chip ID: 0x76 (Samsung K9D1208V0M)

Found saved vivi parameters.

Press Return to start the LINUX/Wince now, any other key for vivi

Copy linux kernel from 0x00050000 to 0x30008000, size = 0x00200000 ... done

zImage magic = 0x016f2818

Setup linux parameters at 0x30000100

linux command line is: "noinitrd root="/dev/mtdblock2" init="/linuxrc" console="ttySAC0""

MACH_TYPE = 362

NOW, Booting Linux......

Uncompressing Linux.......................................................................................................................... done, booting the kernel.

Linux version 2.6.29.1 (root@localhost.localdomain) (gcc version 4.3.2 (Sourcery G++ Lite 2008q3-72) ) #8 Sat Jul 18 10:37:22 CST 2009

CPU: ARM920T [41129200] revision 0 (ARMv4T), cr="c0007177"

CPU: VIVT data cache, VIVT instruction cache

Machine: Study-S3C2440

ATAG_INITRD is deprecated; please update your bootloader.

Memory policy: ECC disabled, Data cache writeback

CPU S3C2440A (id 0x32440001)

S3C24XX Clocks, (c) 2004 Simtec Electronics

S3C244X: core 405.000 MHz, memory 101.250 MHz, peripheral 50.625 MHz

CLOCK: Slow mode (1.500 MHz), fast, MPLL on, UPLL on

Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 16256

Kernel command line: noinitrd root="/dev/mtdblock2" init="/linuxrc" console="ttySAC0"

irq: clearing pending status 02000000

irq: clearing subpending status 00000002

PID hash table entries: 256 (order: 8, 1024 bytes)

Console: colour dummy device 80x30

console [ttySAC0] enabled

Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)

Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)

Memory: 64MB = 64MB total

Memory: 60876KB available (3536K code, 293K data, 136K init)

Calibrating delay loop... 201.93 BogoMIPS (lpj=504832)

Mount-cache hash table entries: 512

CPU: Testing write buffer coherency: ok

net_namespace: 296 bytes

NET: Registered protocol family 16

S3C2410 Power Management, (c) 2004 Simtec Electronics

S3C2440: Initialising architecture

S3C2440: IRQ Support

S3C24XX DMA Driver, (c) 2003-2004,2006 Simtec Electronics

DMA channel 0 at c4808000, irq 33

DMA channel 1 at c4808040, irq 34

DMA channel 2 at c4808080, irq 35

DMA channel 3 at c48080c0, irq 36

S3C244X: Clock Support, DVS off

bio: create slab

SCSI subsystem initialized

usbcore: registered new interface driver usbfs

usbcore: registered new interface driver hub

usbcore: registered new device driver usb

NET: Registered protocol family 2

IP route cache hash table entries: 1024 (order: 0, 4096 bytes)

TCP established hash table entries: 2048 (order: 2, 16384 bytes)

TCP bind hash table entries: 2048 (order: 1, 8192 bytes)

TCP: Hash tables configured (established 2048 bind 2048)

TCP reno registered

NET: Registered protocol family 1

NTFS driver 2.1.29 [Flags: R/O].

yaffs Jul 18 2009 10:31:41 Installing.

msgmni has been set to 119

io scheduler noop registered

io scheduler anticipatory registered (default)

io scheduler deadline registered

io scheduler cfq registered

Console: switching to colour frame buffer device 30x40

fb0: s3c2410fb frame buffer device

lp: driver loaded but no devices found

ppdev: user-space parallel port driver

Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled

s3c2440-uart.0: s3c2410_serial0 at MMIO 0x50000000 (irq = 70) is a S3C2440

s3c2440-uart.1: s3c2410_serial1 at MMIO 0x50004000 (irq = 73) is a S3C2440

s3c2440-uart.2: s3c2410_serial2 at MMIO 0x50008000 (irq = 76) is a S3C2440

brd: module loaded

loop: module loaded

dm9000 Ethernet Driver, V1.31

Uniform Multi-Platform E-IDE driver

ide-gd driver 1.18

ide-cd driver 5.00

Driver 'sd' needs updating - please use bus_type methods

S3C24XX NAND Driver, (c) 2004 Simtec Electronics

s3c2440-nand s3c2440-nand: Tacls="1", 9ns Twrph0=4 39ns, Twrph1=1 9ns

NAND device: Manufacturer ID: 0xec, Chip ID: 0x76 (Samsung NAND 64MiB 3,3V 8-bit)

Scanning device for bad blocks

Creating 3 MTD partitions on "NAND 64MiB 3,3V 8-bit":

0x000000000000-0x000000030000 : "boot"

0x000000050000-0x000000250000 : "kernel"

0x000000250000-0x000003ffc000 : "kernel"

usbmon: debugfs is not available

ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver

s3c2410-ohci s3c2410-ohci: S3C24XX OHCI

s3c2410-ohci s3c2410-ohci: new USB bus registered, assigned bus number 1

s3c2410-ohci s3c2410-ohci: irq 42, io mem 0x49000000

usb usb1: New USB device found, idVendor="1d6b", idProduct="0001"

usb usb1: New USB device strings: Mfr="3", Product="2", SerialNumber="1"

usb usb1: Product: S3C24XX OHCI

usb usb1: Manufacturer: Linux 2.6.29.1 ohci_hcd

usb usb1: SerialNumber: s3c24xx

usb usb1: configuration #1 chosen from 1 choice

hub 1-0:1.0: USB hub found

hub 1-0:1.0: 2 ports detected

usbcore: registered new interface driver libusual

usbcore: registered new interface driver usbserial

USB Serial support registered for generic

usbcore: registered new interface driver usbserial_generic

usbserial: USB Serial Driver core

USB Serial support registered for FTDI USB Serial Device

usbcore: registered new interface driver ftdi_sio

ftdi_sio: v1.4.3:USB FTDI Serial Converters Driver

USB Serial support registered for pl2303

usbcore: registered new interface driver pl2303

pl2303: Prolific PL2303 USB to serial adaptor driver

s3c2410_udc: debugfs dir creation failed -19

mice: PS/2 mouse device common for all mice

i2c /dev entries driver

s3c2440-i2c s3c2440-i2c: slave address 0x10

s3c2440-i2c s3c2440-i2c: bus frequency set to 98 KHz

s3c2440-i2c s3c2440-i2c: i2c-0: S3C I2C adapter

S3C2410 Watchdog Timer, (c) 2004 Simtec Electronics

s3c2410-wdt s3c2410-wdt: watchdog inactive, reset disabled, irq enabled

TCP cubic registered

RPC: Registered udp transport module.

RPC: Registered tcp transport module.

yaffs: dev is 32505858 name is "mtdblock2"

yaffs: passed flags ""

yaffs: Attempting MTD mount on 31.2, "mtdblock2"

yaffs_read_super: isCheckpointed 0

VFS: Mounted root (yaffs filesystem) on device 31:2.

Freeing init memory: 136K

----------munt all----------------

***********************************************

****************Studying ARM*********************

Kernel version:linux-2.6.29.1

Student:Feng dong rui

Date:2009.07.15

***********************************************

 

Please press Enter to activate this console.

[@MrFeng=W]#ls

bin         etc         linuxrc     proc        sys         var

boot        home        lost+found  root        tmp         www

dev         lib         mnt         sbin        usr

[@MrFeng=W]#

这期间可能会遇到这样或那样启动失败的错误,要么是内核移植有问题,要么是根文件系统没制作好,只有到google上搜索解决问题了。我就是重复的配置和编译、google,甚至虚拟机上的Linux系统都重新装过,经过许多重复的劳动和思考终于移植成功了。


关键字:S3C2440的  Linux  内核移植  yaffs2  文件系统 引用地址:基于S3C2440的Linux内核移植和yaffs2文件系统制作--启动系统

上一篇:基于STM32的智能学习空调项目的定时器捕获驱动
下一篇:基于S3C2440的Linux内核移植和yaffs2文件系统制作--根文件系统

推荐阅读最新更新时间:2024-03-16 16:24

gcc、arm-Linux-gcc和arm-elf-gcc组成及区别
一、GCC简介 The GNU Compiler Collection,通常简称 GCC,是一套由 GNU 开发的编译器集,为什么是编辑器集而不是编译器呢? 那是因为它不仅支持 C 语言编译,还支持 C++, Ada,Objective C 等许多语言。另外 GCC 对硬件平台的支持,可以所无所不在,它不仅支持 X86处理器架构, 还支持 ARM, Motorola 68000, Motorola 8800,AtmelAVR,MIPS 等处理器架构。 二、GCC的组成结构 GCC 内部结构主要由 Binutils、gcc-core、Glibc 等软件包组成。 1. Binutils:它是一组开发工具,包括连接器,汇编器
[单片机]
建立ARM+Linux应用程序调试环境
Gdb+gdbserver+insight环境的搭建 1. 下载gdb源代码 http://ftp.gnu.org/gnu/gdb/ 2. 配置安装gdb+gdbser $ tar jxvf gdb-6.6.tar.bz2 $ cd x/gdb $ ./configure --target=arm-linux --prefix=/usr/local/arm-gdb v --prefix用于指定安装路径 --target=arm-linux 用于制定目标环境的编译 编译, $ make 安装, $ sudo make install 之后在x/bin文件夹下生成arm-linx-gdb可执行文件. $ cd g
[单片机]
S3C2440与NAND FLASH(K9F1208)接线分析
一、SDRAM(HY57V561620F)连线分析 1、 S3C2440 有27根地址线ADDR ,8根片选信号ngcs0-ngcs7,对应bank0-bank7,当访问bankx 的地址空间,ngcsx引脚为低电平,选中外设。 2^27=128MByte, 8*128Mbyte = 1Gbyte,所以S3C2440 总的寻址空间是1Gbyte。但市面上很少有32位宽度的单片SDRAM,一般选择2片16位SDRAM 扩展得到32位SDRAM. 2、这里选择的SDARM是HY57V561620F,4Mbit * 4bank *16I/O,共32Mbyte。 首先了解下SDRAM 的寻址原理。 SDRAM 内部是一个存储阵列,
[单片机]
<font color='red'>S3C2440</font>与NAND FLASH(K9F1208)<font color='red'>的</font>接线分析
基于Linux电子收款机税源数据采集方案
  1. 引言   税收是国家财政的重要组成部分,但是在税收领域依法纳税意识淡薄,偷税逃税现象依然比较严重,尤其是对财务核算不健全的*,税务机关难以实施有效监控。这种现状不但严重扰乱正常的经济秩序,而且导致国家税收大量流失。为了进一步加强税源监控,堵塞税收漏洞,减少税收流失,国家先后出台了税控收款机标准GB18240.1~GB18240.6 等六个部分,建立了以电子收款机+税控器+税控IC 卡+税控收款机管理系统的基本工作模式,明确了以票控税的基本原则。要求每当电子收款机上完成一笔销售时,收集其销售明细数据,将其交由税控器记录统计,并将税控器依据销售明细数据生成的税控码添加到销售小票上,以此来表示此笔销售已被税务机关记录。本文
[嵌入式]
linux下STM32开发环境搭建
前言: 本文最终目的是在 ubuntu 16.04 系统下开发STM32。 用到了 STM32CUBEMX 去生成带有 Makefile 的代码,然后使用 gcc-arm-none-eabi 工具对程序进行编译。再通过 openocd 加 CMSIS-DAP的方式连接到目标板(这里是一块STM32F103C8T6)加下载程序。最终使用 GDB 工具进行调试程序。 安装 JAVA 环境 安装 STM32CUBEMX 是需要JAVA的环境的,下载的地址详见文首“参考”项。下载 linux 版本的压缩包。将其放到 linux 系统下进行解压,注意你文件放的路径。 1:使用下面命令打开 profile sudo vi /e
[单片机]
<font color='red'>linux</font>下STM32开发环境搭建
linux中LCD设备驱动(2)——基于s3c6410平台
上一篇说了framebuffer帧缓冲的有关知识,这一篇具体的说下LCD驱动的实现。 1、LCD设备驱动在linux内核中是作为平台设备存在,所以又要说那些已经说过很多遍的东西。 int __devinit s3cfb_init(void) { return platform_driver_register(&s3cfb_driver); } static void __exit s3cfb_cleanup(void) { platform_driver_unregister(&s3cfb_driver); } module_init(s3cfb_init); module_exit(s3cfb_cleanup); 对
[单片机]
linux-2.6.33移植到FL2440
宿主机:ubuntu10.04 目标机:fl2440 交叉编译器:arm-linux-gcc-3.4.1 交叉编译器路径:/usr/local/arm/3.4.1 要移植的内核版本:linux-2.6.33.19 1 移植yaffs2驱动 yaffs下载地址: http://www.aleph1.co.uk/cgi-bin/viewcvs.cgi tar zxvf yaffs2.tar.gz cd yaffs2 ./patch-ker.sh c /linux-2.6.33.19 2 修改机器码 s3c2410 ARCH_S3C2410 S3C2410 193 删掉 s3c2440 ARCH_S3C2440 S3C24
[单片机]
<font color='red'>linux</font>-2.6.33<font color='red'>移植</font>到FL2440
基于ARM Linux图像采集与蓝牙传输
嵌入式Linux系统具有可移植性好、网络功能强、优秀的GNU编译工具、免费的开放源代码等优点。S3C2410处理器是一款采用ARM920T结构,内部资源非常丰富的32位嵌入式处理器。USB摄像头具有低廉的价格,良好的性能,加上Linux下有V4L支持对其编程,很容易集成到嵌入式系统中。蓝牙技术是目前被认可的短距离无线通信技术,广泛应用于手机、电脑以及汽车免提系统。 本文介绍基于嵌入式Linux的USB图像采集系统,并通过构建好的嵌入式Linux下的蓝牙环境将采集到的图片传送到蓝牙手机上,实现监控功能。 1 软硬件平台概述 系统硬件平台如图1所示。该平台软件上采用嵌入式Linux操作系统;硬件上采用Samsung公司的S3C2
[嵌入式]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved