这两天在Linux下做了一个ext2的映像文件,将之插入到uClinux代码的末尾。原以为文件系统的问题应该很容易搞定,谁知忙碌了三四个晚上竟然毫无进展:
Linux version 2.6.19.3-ADI-2007R1.1-svn (wmz@gtw.com) (vdsp 4.5) #2 Tue Sep 25 11:24:43 CST 2007
Warning: limiting memory to 53MB due to hardware anomaly 05000263
Blackfin support (C) 2004-2007 Analog Devices, Inc.
Compiled for ADSP-BF561 Rev 0.3
Blackfin Linux support by http://blackfin.uclinux.org/
Processor Speed: 600 MHz core clock and 100 Mhz System Clock
Board Memory: 64MB
Kernel Managed Memory: 64MB
Memory map:
  text      = 0x00010000-0x001136a3
  init      = 0x001136a3-0x00174a16
  data      = 0x0017c110-0x00180cbc
  stack     = 0x0017e000-0x00180000
  bss       = 0x00180cbc-0x00180cbc
  available = 0x00180cbc-0x03500000
  rootfs    = 0x03500000-0x03f00000
  DMA Zone  = 0x03f00000-0x04000000
Instruction Cache Enabled
Data Cache Enabled
Hardware Trace Enabled
Built 1 zonelists.  Total pages: 13462
Kernel command line: root=mtdblock0 rw console=ttyBF0,57600
Configuring Blackfin Priority Driven Interrupts
PID hash table entries: 256 (order: 8, 1024 bytes)
Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
Physical pages: 3500
Memory available: 52156k/64015k RAM, (388k init code, 1037k kernel code, 0k data, 1024k dma)
Blackfin Scratchpad data SRAM: 4 KB
Blackfin DATA_A SRAM: 16 KB
Blackfin DATA_B SRAM: 16 KB
Blackfin Instruction SRAM: 16 KB
Mount-cache hash table entries: 512
Blackfin DMA Controller
Serial: Blackfin serial driver
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
io scheduler anticipatory registered (default)
io scheduler cfq registered
io scheduler noop registered
uclinux[mtd]: RAM probe address=0x3500000 size=0xa00000
Creating 1 MTD partitions on "RAM":
0x00000000-0x00a00000 : "ROMfs"
uclinux[mtd]: set ROMfs:EXT2  to be root filesystem
JFFS2 version 2.2. (NAND) (C) 2001-2006 Red Hat, Inc.
JFFS2: default compression mode: priority
VFS: Cannot open root device "mtdblock0" or unknown-block(31,0)
Please append a correct "root=" boot option
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(31,0)
 从提示上看RAMDISK已经成功建立,所需要的几个模块也已经成功加载,跟踪时发现mtd_open这样的函数居然不会被调用,而且与mtd相关的函数也只有register的函数被调用了,让人百思不得其解。

看来得先开始研究一下文件管理这一块才行!

Logo

更多推荐