根据风微柳西的blog文章移植2.6.14的linux内核,编译成功,下载运行的情况如下:
压缩内核zImage下载到0x10000的norflash上。
文件系统romfs.img 下载到0x100000的norflash上。 **************************************
* *
* BIOS for FS44B0 CORE Board V3.31 *
* RAM=16M,FLASH=4M *
* *
***************************************
Nor Flash ID is : 235B00BF
SST39VF3201 Found
Nand Flash ID is 0xEC73, Size = 16M, Status = 0xC0
Build date : Apr 23 2005--00:48:11
Machine Number is 0
IP address : 192.168.0.100
IP MASK : 255.255.255.0
IP GATE : 192.168.3.1
Serial baud : 115,200
Program save in nor flash
Program save address 0x10000
Program run address 0xC300000
Program boot params : root=/dev/rom0 console=ttyS0,115200 mem=16m
CPU clock is 61,000,000Hz
Current date is 2000-0-21 [FRI]
Current time is 10:36:11
Set boot key is key3, check state high to boot
Run program from 0xC300000
Set boot params = root=/dev/rom0 console=ttyS0,115200 mem=16m
Linux version 2.6.14-hsc0 (root@chunliang-laptop) (gcc version 2.95.3 20010315 (release)(ColdFire patches - 20010318 from http://fiddes.net/coldfire/)(uClinux XIP and shared lib patches from http://www.snapgear.com/)) #2 Sat Apr 12 13:39:57 CST 2008
CPU: <NULL> [44b07700]
Machine: S3C44B0X Development Board
Memory management: Non-Paged(unused/noMMU)
Built 1 zonelists
Kernel command line:
PID hash table entries: 128 (order: 7, 2048 bytes)
Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
Memory: 16MB = 16MB total
Memory: 14668KB available (1321K code, 129K data, 72K init)
Mount-cache hash table entries: 512
softlockup thread 0 started up.
NET: Registered protocol family 16
audit: initializing netlink socket (disabled)
audit(0.410:1): initialized
DCC: JTAG1 Serial emulation driver driver $Revision: 1.1 $
ttyJ0 at MMIO 0x12345678 (irq = 0) is a DCC
io scheduler noop registered
io scheduler anticipatory registered
io scheduler deadline registered
io scheduler cfq registered
RAMDISK driver initialized: 16 RAM disks of 1024K size 1024 blocksize
loop: loaded (max 8 devices)
NET: Registered protocol family 2
IP route cache hash table entries: 256 (order: -2, 1024 bytes)
TCP established hash table entries: 1024 (order: 1, 8192 bytes)
TCP bind hash table entries: 1024 (order: 1, 8192 bytes)
TCP: Hash tables configured (established 1024 bind 1024)
TCP reno registered
TCP bic registered
NET: Registered protocol family 1
NET: Registered protocol family 17
VFS: Cannot open root device "<NULL>" or unknown-block(0,255)
Please append a correct "root=" boot option
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-blo ck(0,255)
问题: 1,Kernel command line: 没有参数,bootloader的设置参数没有传给它。如果在/arch/arm/kernel/setup.c 里面直接给默认的command line 赋命令,这样系统就跑完bootloader,Linux version 2.6.14-hsc0 这一句开始就不打印了。
2,怎么建立romfs,下载的romfs.img 地址在0x100000,在那个地方告诉uClinux内核的?
3,打印信息没有打印有关内存分区的消息,是不是块会有问题?