2010-01-19 09:16:05 problem when booting kernel
Filip Vanalme (BELGIUM)
Message: 84754
Hi,
When I boot the kernel, I get this output :
## Booting kernel from Legacy Image at 20200000 ...
Image Name: Linux Kernel and ext2
Image Type: Blackfin Linux Kernel Image (gzip compressed)
Data Size: 1992183 Bytes = 1.9 MB
Load Address: 00100000
Entry Point: 002704ec
Verifying Checksum ... OK
Uncompressing Kernel Image ... OK
Starting Kernel at = 002704ec
Linux version 2.6.28.10-ADI-2009R1blackfin (FVA@tlv-thc-lx-01) (gcc version 4.1.2 (ADI svn)) #57 PREEMPT Tue Jan 19 14:40:13 CET 2010
Board Memory: 128MB
Kernel Managed Memory: 128MB
Memory map:
fixedcode = 0x00000400-0x00000490
text = 0x00100000-0x00200af0
rodata = 0x00200af0-0x002394b8
bss = 0x0023a000-0x0025ccd8
data = 0x0025ccd8-0x0026c000
stack = 0x0026a000-0x0026c000
init = 0x0026c000-0x00280000
available = 0x00280000-0x07000000
rootfs = 0x07000000-0x07f00000
DMA Zone = 0x07f00000-0x08000000
Hardware Trace Active and Enabled
Boot Mode: 0
Reset caused by Software reset
Blackfin support (C) 2004-2009 Analog Devices, Inc.
Compiled for ADSP-BF561 Rev 0.5
Blackfin Linux support by blackfin.uclinux.org/
Processor Speed: 500 MHz core clock and 100 MHz System Clock
NOMPU: setting up cplb tables
Instruction Cache Enabled for CPU0
Data Cache Enabled for CPU0 (write-through)
Data Cache (L2 SRAM) Enabled (write-through)
Built 1 zonelists in Zone order, mobility grouping off. Total pages: 28448
Kernel command line: root=/dev/mtdblock0 rw earlyprintk=serial,uart0,57600 console=ttyBF0,115200
Configuring Blackfin Priority Driven Interrupts
PID hash table entries: 512 (order: 9, 2048 bytes)
console [ttyBF0] enabled
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Memory available: 111000k/131072k RAM, (80k init code, 1026k kernel code, 430k data, 1024k dma, 2152k reserved)
Calibrating delay loop... 985.08 BogoMIPS (lpj=492544)
Mount-cache hash table entries: 512
Blackfin Scratchpad data SRAM: 4 KB
Blackfin L1 Data A SRAM: 16 KB (15 KB free)
Blackfin L1 Data B SRAM: 16 KB (16 KB free)
Blackfin L1 Instruction SRAM: 16 KB (5 KB free)
Blackfin L2 SRAM: 128 KB (128 KB free)
net_namespace: 288 bytes
NET: Registered protocol family 16
Blackfin DMA Controller
ezkit_init(): registering device resources
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 4096 (order: 3, 32768 bytes)
TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
TCP reno registered
NET: Registered protocol family 1
JFFS2 version 2.2. (NAND) 2001-2006 Red Hat, Inc.
msgmni has been set to 216
io scheduler noop registered
io scheduler anticipatory registered
io scheduler cfq registered (default)
simple-gpio: now handling 48 GPIOs: 0 - 47
Serial: 8250/16550 driver4 ports, IRQ sharing disabled
Serial: Blackfin serial driver
bfin-uart.1: ttyBF0 at MMIO 0xffc00400 (irq = 35) is a BFIN-UART
brd: module loaded
smsc911x: Driver version 2007-07-13.
eth0: SMSC911x MAC Address: 00:0e:3d:20:80:01
physmap platform flash device: 01000001 at 20000000
physmap-flash.0: Found 1 x16 devices at 0x0 in 16-bit bank
Amd/Fujitsu Extended Query Table at 0x0040
Using buffer write method
physmap-flash.0: CFI does not contain boot bank location. Assuming top.
number of CFI chips: 1
cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness.
cmdlinepart partition parsing not available
RedBoot partition parsing not available
Using physmap partition information
Creating 5 MTD partitions on "physmap-flash.0":
0x00000000-0x000a0000 : "bootloader(nor)"
mtd: Giving out device 0 to bootloader(nor)
0x000a0000-0x00200000 : "Default Kernel(nor)"
mtd: Giving out device 1 to Default Kernel(nor)
0x00200000-0x00600000 : "Kernel(nor)"
mtd: Giving out device 2 to Kernel(nor)
0x00600000-0x00700000 : "CoreB(nor)"
mtd: Giving out device 3 to CoreB(nor)
0x00700000-0x01000000 : "JFFS2(nor)"
mtd: Giving out device 4 to JFFS2(nor)
uclinux[mtd]: RAM probe address=0x7000000 size=0xf00000
Creating 1 MTD partitions on "RAM":
0x00000000-0x00f00000 : "ROMfs"
mtd: Giving out device 5 to ROMfs
i2c /dev entries driver
TCP cubic registered
NET: Registered protocol family 17
mtdblock_open
ok
mtdblock: read on "bootloader(nor)" at 0x400, size 0x200
mtdblock: read on "bootloader(nor)" at 0x600, size 0x200
mtdblock_release
ok
List of all partitions:
1f00 640 mtdblock0 (driver?)
1f01 1408 mtdblock1 (driver?)
1f02 4096 mtdblock2 (driver?)
1f03 1024 mtdblock3 (driver?)
1f04 9216 mtdblock4 (driver?)
1f05 15360 mtdblock5 (driver?)
No filesystem could mount root, tried: ext2
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(31,0)
As you can see, it ends with a kernel panic. I think the MTD partitions are correct. However, I would expect ROMfs to have device 0 instead of 5 (in one of the docs, I read that "... you'd get an extra ROMFS partition as mtdblock0"). What am i missing here ?
In the list of partitions, I think that 'driver?' is not correct. Shouldn't there be a driver filled in (e.g. ext2). As far as I can see, EXT2 is enabled in my kernel configuration.
I think I'm still missing a small piece...
TranslateQuoteReplyEditDelete
2010-01-19 09:53:29 Re: problem when booting kernel
Robin Getz (UNITED STATES)
Message: 84758
Filip:
From your post:
Kernel command line: root=/dev/mtdblock0
Creating 5 MTD partitions on "physmap-flash.0":
0x00000000-0x000a0000 : "bootloader(nor)"
mtd: Giving out device 0 to bootloader(nor)
Looks like your kernel command line should have the root partition pointing to something else?
QuoteReplyEditDelete
2010-01-19 10:17:30 Re: problem when booting kernel
Filip Vanalme (BELGIUM)
Message: 84759
I'm trying to move from an old 2006R1 system to the latest release. In that old version, before the creation of the 5 partitions, I see this :
uclinux[mtd]: RAM probe address=0x2000000 size=0xc00000
Creating 1 MTD partitions on "RAM":
0x00000000-0x00c00000 : "EXT2fs"
uclinux[mtd]: set EXT2fs to be root filesystem
As this is the first partition, this will get mtdblock0, correct ? And then the Kernel command line is correct. In the new version, this comes at the very end, after the creation of the 5 partitions, and gets mtdblock5 instead. Could that be a problem ? Should'n the root filesystem have mtdblock0 ?
I've tried to change the Kernel command line to : root=/dev/mtdblock5 but then I got this at the end :
...
Creating 5 MTD partitions on "physmap-flash.0":
0x00000000-0x000a0000 : "bootloader(nor)"
mtd: Giving out device 0 to bootloader(nor)
0x000a0000-0x00200000 : "Default Kernel(nor)"
mtd: Giving out device 1 to Default Kernel(nor)
0x00200000-0x00600000 : "Kernel(nor)"
mtd: Giving out device 2 to Kernel(nor)
0x00600000-0x00700000 : "CoreB(nor)"
mtd: Giving out device 3 to CoreB(nor)
0x00700000-0x01000000 : "JFFS2(nor)"
mtd: Giving out device 4 to JFFS2(nor)
uclinux[mtd]: RAM probe address=0x7000000 size=0xf00000
Creating 1 MTD partitions on "RAM":
0x00000000-0x00f00000 : "ROMfs"
mtd: Giving out device 5 to ROMfs
i2c /dev entries driver
TCP cubic registered
NET: Registered protocol family 17
mtdblock_open
ok
mtdblock: read on "ROMfs" at 0x400, size 0x200
mtdblock: read on "ROMfs" at 0x600, size 0x200
mtdblock: read on "ROMfs" at 0x800, size 0x200
mtdblock: read on "ROMfs" at 0xa00, size 0x200
mtdblock: read on "ROMfs" at 0x1400, size 0x200
mtdblock: read on "ROMfs" at 0x1600, size 0x200
mtdblock: write on "ROMfs" at 0x400, size 0x200
mtdblock: write on "ROMfs" at 0x600, size 0x200
VFS: Mounted root (ext2 filesystem).
Freeing unused kernel memory: 80k freed
mtdblock: read on "ROMfs" at 0xf1400, size 0x200
mtdblock: read on "ROMfs" at 0xf1600, size 0x200
mtdblock: read on "ROMfs" at 0x3000, size 0x200
mtdblock: read on "ROMfs" at 0x3200, size 0x200
mtdblock: read on "ROMfs" at 0x174800, size 0x200
mtdblock: read on "ROMfs" at 0x174a00, size 0x200
mtdblock: read on "ROMfs" at 0x174c00, size 0x200
mtdblock: read on "ROMfs" at 0x174e00, size 0x200
mtdblock: read on "ROMfs" at 0x3800, size 0x200
mtdblock: read on "ROMfs" at 0x3a00, size 0x200
dma_alloc_init: dma_page @ 0x00278000 - 256 pages at 0x07f00000
mtdblock: read on "ROMfs" at 0x782800, size 0x200
mtdblock: read on "ROMfs" at 0x782a00, size 0x200
mtdblock: read on "ROMfs" at 0x1c00, size 0x200
mtdblock: read on "ROMfs" at 0x1e00, size 0x200
mtdblock: read on "ROMfs" at 0xf2c00, size 0x200
mtdblock: read on "ROMfs" at 0xf2e00, size 0x200
mtdblock: read on "ROMfs" at 0x782000, size 0x200
mtdblock: read on "ROMfs" at 0x782200, size 0x200
mtdblock: read on "ROMfs" at 0xb09c00, size 0x200
mtdblock: read on "ROMfs" at 0xb09e00, size 0x200
mtdblock: read on "ROMfs" at 0xb0a000, size 0x200
mtdblock: read on "ROMfs" at 0xb0a200, size 0x200
mtdblock: read on "ROMfs" at 0xb0a400, size 0x200
mtdblock: read on "ROMfs" at 0xb0a600, size 0x200
mtdblock: read on "ROMfs" at 0xb0a800, size 0x200
mtdblock: read on "ROMfs" at 0xb0aa00, size 0x200
mtdblock: read on "ROMfs" at 0xb0ac00, size 0x200
mtdblock: read on "ROMfs" at 0xb0ae00, size 0x200
mtdblock: read on "ROMfs" at 0xb0b000, size 0x200
mtdblock: read on "ROMfs" at 0xb0b200, size 0x200
mtdblock: read on "ROMfs" at 0xb0b400, size 0x200
mtdblock: read on "ROMfs" at 0xb0b600, size 0x200
mtdblock: read on "ROMfs" at 0xb0b800, size 0x200
mtdblock: read on "ROMfs" at 0xb0ba00, size 0x200
mtdblock: read on "ROMfs" at 0xb0bc00, size 0x200
mtdblock: read on "ROMfs" at 0xb0be00, size 0x200
mtdblock: read on "ROMfs" at 0xb0c000, size 0x200
mtdblock: read on "ROMfs" at 0xb0c200, size 0x200
mtdblock: read on "ROMfs" at 0xb0c400, size 0x200
mtdblock: read on "ROMfs" at 0xb0c600, size 0x200
mtdblock: read on "ROMfs" at 0xb0c800, size 0x200
mtdblock: read on "ROMfs" at 0xb0ca00, size 0x200
mtdblock: read on "ROMfs" at 0xb0cc00, size 0x200
mtdblock: read on "ROMfs" at 0xb0ce00, size 0x200
mtdblock: read on "ROMfs" at 0xb0d000, size 0x200
mtdblock: read on "ROMfs" at 0xb0d200, size 0x200
mtdblock: read on "ROMfs" at 0xb0d400, size 0x200
mtdblock: read on "ROMfs" at 0xb0d600, size 0x200
mtdblock: read on "ROMfs" at 0xb0d800, size 0x200
mtdblock: read on "ROMfs" at 0xb0da00, size 0x200
mtdblock: read on "ROMfs" at 0xb0dc00, size 0x200
mtdblock: read on "ROMfs" at 0xb0de00, size 0x200
mtdblock: read on "ROMfs" at 0x781400, size 0x200
mtdblock: read on "ROMfs" at 0x781600, size 0x200
mtdblock: read on "ROMfs" at 0x872000, size 0x200
mtdblock: read on "ROMfs" at 0x872200, size 0x200
mtdblock: read on "ROMfs" at 0x8e8400, size 0x200
mtdblock: read on "ROMfs" at 0x8e8600, size 0x200
mtdblock: read on "ROMfs" at 0x8e8800, size 0x200
mtdblock: read on "ROMfs" at 0x8e8a00, size 0x200
mtdblock: read on "ROMfs" at 0x8e8c00, size 0x200
mtdblock: read on "ROMfs" at 0x8e8e00, size 0x200
mtdblock: read on "ROMfs" at 0x8e9000, size 0x200
mtdblock: read on "ROMfs" at 0x8e9200, size 0x200
mtdblock: read on "ROMfs" at 0x8e9400, size 0x200
mtdblock: read on "ROMfs" at 0x8e9600, size 0x200
mtdblock: read on "ROMfs" at 0x8e9800, size 0x200
mtdblock: read on "ROMfs" at 0x8e9a00, size 0x200
mtdblock: read on "ROMfs" at 0x8e9c00, size 0x200
mtdblock: read on "ROMfs" at 0x8e9e00, size 0x200
mtdblock: read on "ROMfs" at 0x8ea000, size 0x200
mtdblock: read on "ROMfs" at 0x8ea200, size 0x200
mtdblock: read on "ROMfs" at 0x8ea400, size 0x200
mtdblock: read on "ROMfs" at 0x8ea600, size 0x200
mtdblock: read on "ROMfs" at 0x8ea800, size 0x200
mtdblock: read on "ROMfs" at 0x8eaa00, size 0x200
mtdblock: read on "ROMfs" at 0x8eac00, size 0x200
mtdblock: read on "ROMfs" at 0x8eae00, size 0x200
mtdblock: read on "ROMfs" at 0x8eb000, size 0x200
mtdblock: read on "ROMfs" at 0x8eb200, size 0x200
mtdblock: read on "ROMfs" at 0x8eb400, size 0x200
mtdblock: read on "ROMfs" at 0x8eb600, size 0x200
mtdblock: read on "ROMfs" at 0x8eb800, size 0x200
mtdblock: read on "ROMfs" at 0x8eba00, size 0x200
mtdblock: read on "ROMfs" at 0x8ebc00, size 0x200
mtdblock: read on "ROMfs" at 0x8ebe00, size 0x200
mtdblock: read on "ROMfs" at 0x8ec000, size 0x200
mtdblock: read on "ROMfs" at 0x8ec200, size 0x200
mtdblock: read on "ROMfs" at 0x8ec400, size 0x200
mtdblock: read on "ROMfs" at 0x8ec600, size 0x200
mtdblock: read on "ROMfs" at 0x8ec800, size 0x200
mtdblock: read on "ROMfs" at 0x8eca00, size 0x200
mtdblock: read on "ROMfs" at 0x8ecc00, size 0x200
mtdblock: read on "ROMfs" at 0x8ece00, size 0x200
mtdblock: read on "ROMfs" at 0x8ed000, size 0x200
mtdblock: read on "ROMfs" at 0x8ed200, size 0x200
mtdblock: read on "ROMfs" at 0x8ed400, size 0x200
mtdblock: read on "ROMfs" at 0x8ed600, size 0x200
mtdblock: read on "ROMfs" at 0x8ed800, size 0x200
mtdblock: read on "ROMfs" at 0x8eda00, size 0x200
mtdblock: read on "ROMfs" at 0x8edc00, size 0x200
mtdblock: read on "ROMfs" at 0x8ede00, size 0x200
mtdblock: read on "ROMfs" at 0x8ee000, size 0x200
mtdblock: read on "ROMfs" at 0x8ee200, size 0x200
mtdblock: read on "ROMfs" at 0x8ee400, size 0x200
mtdblock: read on "ROMfs" at 0x8ee600, size 0x200
mtdblock: read on "ROMfs" at 0x8ee800, size 0x200
mtdblock: read on "ROMfs" at 0x8eea00, size 0x200
mtdblock: read on "ROMfs" at 0x8eec00, size 0x200
mtdblock: read on "ROMfs" at 0x8eee00, size 0x200
mtdblock: read on "ROMfs" at 0x8ef000, size 0x200
mtdblock: read on "ROMfs" at 0x8ef200, size 0x200
mtdblock: read on "ROMfs" at 0x8ef400, size 0x200
mtdblock: read on "ROMfs" at 0x8ef600, size 0x200
mtdblock: read on "ROMfs" at 0x8ef800, size 0x200
mtdblock: read on "ROMfs" at 0x8efa00, size 0x200
mtdblock: read on "ROMfs" at 0x8efc00, size 0x200
mtdblock: read on "ROMfs" at 0x8efe00, size 0x200
mtdblock: read on "ROMfs" at 0x8f0000, size 0x200
...
MTDSB: dev_name "/dev/mtdblock5"
MTDSB: lookup_bdev() returned 0
MTDSB: New superblock for device 5 ("ROMfs")
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000400: 0x3c00 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000404: 0x3c00 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0000040c: 0x26e8 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000410: 0x3b2e instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000414: 0x0001 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000420: 0x1e00 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000424: 0x1e00 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000428: 0x1e00 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0000042c: 0x4f00 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000430: 0x4f00 instead
Further such events for this erase block will not be printed
Empty flash at 0x00000c00 ends at 0x00000cb8
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0000100c: 0x00ff instead
Empty flash at 0x000013c0 ends at 0x00001400
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00001480: 0x41ed instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00001484: 0x0400 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00001488: 0x3942 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0000148c: 0x3942 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00001490: 0x3942 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0000149c: 0x0002 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000014a8: 0x03c5 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00001900: 0x41ed instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00001904: 0x0400 instead
Further such events for this erase block will not be printed
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00002000: 0xa1ff instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00002004: 0x0007 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00002008: 0x3940 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0000200c: 0x3942 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00002010: 0x3940 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00002018: 0x0064 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00002028: 0x7562 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0000202c: 0x6f62 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00002080: 0xa1ff instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00002084: 0x0007 instead
Further such events for this erase block will not be printed
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00003000: 0x41ed instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00003004: 0x0800 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00003008: 0xd7cd instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0000300c: 0x3942 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00003010: 0xd7cd instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0000301c: 0x0004 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00003028: 0x05d2 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0000302c: 0x05d3 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00003080: 0x21a0 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00003088: 0xd7cd instead
Further such events for this erase block will not be printed
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00004000: 0x21ed instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00004008: 0xd7cd instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0000400c: 0x3942 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00004010: 0xd7cd instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00004028: 0xfe1c instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00004080: 0x21ed instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00004088: 0xd7cd instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0000408c: 0x3942 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00004090: 0xd7cd instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000040a8: 0xfe20 instead
...
which, I think, is not correct either.
TranslateQuoteReplyEditDelete
2010-01-19 12:22:06 Re: problem when booting kernel
Mike Frysinger (UNITED STATES)
Message: 84763
you didnt set rootfstype= in your command line
QuoteReplyEditDelete
2010-01-20 01:54:17 Re: problem when booting kernel
Sonic Zhang (CHINA)
Message: 84784
Which kind of rootfs do you use in your 2009R1 kernel image? The default config use initramfs other than RAM MTD based ext2 fs. So, there is no partition id for the rootfs in 2009R1 image with default config.
QuoteReplyEditDelete
2010-01-20 02:34:21 Re: problem when booting kernel
Filip Vanalme (BELGIUM)
Message: 84788
It seems to make no difference :
## Booting kernel from Legacy Image at 20200000 ...
Image Name: Linux Kernel and romfs
Image Type: Blackfin Linux Kernel Image (gzip compressed)
Data Size: 2099694 Bytes = 2 MB
Load Address: 00100000
Entry Point: 002b2580
Verifying Checksum ... OK
Uncompressing Kernel Image ... OK
Starting Kernel at = 002b2580
Linux version 2.6.28.10-ADI-2009R1blackfin (FVA@tlv-thc-lx-01) (gcc version 4.1.2 (ADI svn)) #62 PREEMPT Wed Jan 20 08:26:52 CET 2010
Board Memory: 128MB
Kernel Managed Memory: 128MB
Memory map:
fixedcode = 0x00000400-0x00000490
text = 0x00100000-0x00228e70
rodata = 0x00228e70-0x00274968
bss = 0x00275000-0x0029b61c
data = 0x0029b61c-0x002ae000
stack = 0x002ac000-0x002ae000
init = 0x002ae000-0x002c4000
available = 0x002c4000-0x07bac000
rootfs = 0x07bac000-0x07f00000
DMA Zone = 0x07f00000-0x08000000
Hardware Trace Active and Enabled
Boot Mode: 0
Reset caused by Software reset
Blackfin support (C) 2004-2009 Analog Devices, Inc.
Compiled for ADSP-BF561 Rev 0.5
Blackfin Linux support by blackfin.uclinux.org/
Processor Speed: 500 MHz core clock and 100 MHz System Clock
NOMPU: setting up cplb tables
Instruction Cache Enabled for CPU0
Data Cache Enabled for CPU0 (write-through)
Data Cache (L2 SRAM) Enabled (write-through)
Built 1 zonelists in Zone order, mobility grouping off. Total pages: 31412
Kernel command line: root=/dev/mtdblock0 rw rootfstype=ext2 console=ttyBF0,115200
Configuring Blackfin Priority Driven Interrupts
PID hash table entries: 512 (order: 9, 2048 bytes)
Console: colour dummy device 80x25
console [ttyBF0] enabled
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Memory available: 122676k/131072k RAM, (88k init code, 1187k kernel code, 533k data, 1024k dma, 2156k reserved)
SLUB: Genslabs=12, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
Calibrating delay loop... 987.13 BogoMIPS (lpj=493568)
Mount-cache hash table entries: 512
Blackfin Scratchpad data SRAM: 4 KB
Blackfin L1 Data A SRAM: 16 KB (13 KB free)
Blackfin L1 Data B SRAM: 16 KB (16 KB free)
Blackfin L1 Instruction SRAM: 16 KB (3 KB free)
Blackfin L2 SRAM: 128 KB (128 KB free)
net_namespace: 288 bytes
NET: Registered protocol family 16
Blackfin DMA Controller
ezkit_init(): registering device resources
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 4096 (order: 3, 32768 bytes)
TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
TCP reno registered
NET: Registered protocol family 1
JFFS2 version 2.2. (NAND) 2001-2006 Red Hat, Inc.
JFFS2: default compression mode: priority
msgmni has been set to 239
io scheduler noop registered
io scheduler anticipatory registered
io scheduler cfq registered (default)
simple-gpio: now handling 48 GPIOs: 0 - 47
Serial: 8250/16550 driver4 ports, IRQ sharing disabled
Serial: Blackfin serial driver
bfin-uart.1: ttyBF0 at MMIO 0xffc00400 (irq = 35) is a BFIN-UART
brd: module loaded
smsc911x: Driver version 2007-07-13.
eth0: SMSC911x MAC Address: 00:0e:3d:20:80:01
physmap platform flash device: 01000001 at 20000000
physmap-flash.0: Found 1 x16 devices at 0x0 in 16-bit bank
Amd/Fujitsu Extended Query Table at 0x0040
Using buffer write method
physmap-flash.0: CFI does not contain boot bank location. Assuming top.
number of CFI chips: 1
cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness.
cmdlinepart partition parsing not available
RedBoot partition parsing not available
Using physmap partition information
Creating 5 MTD partitions on "physmap-flash.0":
0x00000000-0x000a0000 : "bootloader(nor)"
mtd: Giving out device 0 to bootloader(nor)
0x000a0000-0x00200000 : "Default Kernel(nor)"
mtd: Giving out device 1 to Default Kernel(nor)
0x00200000-0x00600000 : "Kernel(nor)"
mtd: Giving out device 2 to Kernel(nor)
0x00600000-0x00700000 : "CoreB(nor)"
mtd: Giving out device 3 to CoreB(nor)
0x00700000-0x01000000 : "JFFS2(nor)"
mtd: Giving out device 4 to JFFS2(nor)
uclinux[mtd]: RAM probe address=0x7bac000 size=0x353190
Creating 1 MTD partitions on "RAM":
0x00000000-0x00353190 : "ROMfs"
mtd: Giving out device 5 to ROMfs
mice: PS/2 mouse device common for all mice
i2c /dev entries driver
TCP cubic registered
NET: Registered protocol family 17
mtdblock_open
ok
mtdblock: read on "bootloader(nor)" at 0x400, size 0x200
mtdblock: read on "bootloader(nor)" at 0x600, size 0x200
mtdblock_release
ok
List of all partitions:
1f00 640 mtdblock0 (driver?)
1f01 1408 mtdblock1 (driver?)
1f02 4096 mtdblock2 (driver?)
1f03 1024 mtdblock3 (driver?)
1f04 9216 mtdblock4 (driver?)
1f05 3404 mtdblock5 (driver?)
No filesystem could mount root, tried: ext2
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(31,0)
TranslateQuoteReplyEditDelete
2010-01-20 02:38:23 Re: problem when booting kernel
Filip Vanalme (BELGIUM)
Message: 84789
As I am a rookie in embedded Linux programming : where can I find the type of rootfs ?
TranslateQuoteReplyEditDelete
2010-01-20 07:30:28 Re: problem when booting kernel
Mike Frysinger (UNITED STATES)
Message: 84850
you're still using the wrong root=. your ext2 uclinux mtd map is not mtd0.
QuoteReplyEditDelete
2010-01-20 07:57:59 Re: problem when booting kernel
Filip Vanalme (BELGIUM)
Message: 84852
Hi Mike,
Meanwhile, I changed the root= to use mtd5 instead of 0. The result, however, is the same. It ends with this :
1f00 640 mtdblock0 (driver?)
1f01 1408 mtdblock1 (driver?)
1f02 4096 mtdblock2 (driver?)
1f03 1024 mtdblock3 (driver?)
1f04 9216 mtdblock4 (driver?)
1f05 11469 mtdblock5 (driver?)
No filesystem could mount root, tried: ext2
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(31,5)
Maybe this has nothing to do with this problem, but I still don't understand why the romfs partition is not mtd0. When I enable "Generic uClinux RAM/ROM filesystem support", the documentation mentions : "When the latter option is enabled, you'd get an extra ROMFS partition as mtdblock0. This may force an ext2 over INITRAMFS image upon make". (taken from docs.blackfin.uclinux.org/doku.php?id=linux-kernel:mtd&s[]=mtd).
And it was indead like that in my old 2006R2 version. There, first a partition for romfs was created (so mtd0), then the other partitions were created.
TranslateQuoteReplyEditDelete
2010-01-21 00:59:44 Re: problem when booting kernel
Mike Frysinger (UNITED STATES)
Message: 84874
mtd load order is arbitrary, so there is no hard requirement that it be mtdblock0
please post the full boot log, as well as the output from running `make image`
QuoteReplyEditDelete
2010-01-21 03:20:07 Re: problem when booting kernel
Filip Vanalme (BELGIUM)
Message: 84925
Hi Mike,
It seems to work now ! But I don't know why it works now...
Yesterday, because it didn't work, I changed to the BF561_EZKIT target and compiled it. It gave me lots of errors and because I had no time to make this target work, I changed back to my target. Had to configure lots of things again for the board to make it compile again. And then, this morning, set the root to be mtd5 and started the board and surprisingly, it worked...
Unfortunately, I have nog idea of what could have been the problem. There was probably still a problem in configuration files. Because of the switching between targets, I had to remake things and probably solved a problem by doing that.
At the end of the bootlog, you will see that the kernel is running but that it's showing a message now and then. Have to check what that can be... (maybe I'm still starting things that I don't really need).
I notice that there are still things not OK, e.g. the /dev/ directory looks like this :
root:/> ls /dev
console null pts zero
not exactly what I expected.
I also noticed that the /flash directory seems to be read only file system.
Here's the output from the boot :
U-Boot 2008.10 (ADI-2009R1-rc3) (Jan 19 2010 - 10:05:13)
CPU: ADSP bf561-0.5 (Detected Rev: 0.5) (bypass boot)
Board: TELEVIC XT100G2 board
Support: blackfin.uclinux.org/
Clock: VCO: 500 MHz, Core: 500 MHz, System: 100 MHz
RAM: 128 MB
Flash: 16 MB
In: serial
Out: serial
Err: serial
Net: Hit any key to stop autoboot: 5 4 3 2 1 0
## Booting kernel from Legacy Image at 20200000 ...
Image Name: Linux Kernel and ext2
Image Type: Blackfin Linux Kernel Image (gzip compressed)
Data Size: 2565738 Bytes = 2.4 MB
Load Address: 00100000
Entry Point: 002beb88
Verifying Checksum ... OK
Uncompressing Kernel Image ... OK
Starting Kernel at = 002beb88
Linux version 2.6.28.10-ADI-2009R1XT100G2 (FVA@tlv-thc-lx-01) (gcc version 4.1.2 (ADI svn)) #84 PREEMPT Thu Jan 21 08:50:22 CET 2010
bootconsole [early_shadow0] enabled
Board Memory: 128MB
Kernel Managed Memory: 128MB
Memory map:
fixedcode = 0x00000400-0x00000490
text = 0x00100000-0x0022d140
rodata = 0x0022d140-0x0025eb5c
bss = 0x0025f000-0x002aabec
data = 0x002aabf0-0x002ba000
stack = 0x002b8000-0x002ba000
init = 0x002ba000-0x002cf000
available = 0x002cf000-0x07000000
rootfs = 0x07000000-0x07f00000
DMA Zone = 0x07f00000-0x08000000
Hardware Trace Active and Enabled
Boot Mode: 0
Reset caused by Software reset
Blackfin support (C) 2004-2009 Analog Devices, Inc.
Compiled for ADSP-BF561 Rev 0.5
Blackfin Linux support by blackfin.uclinux.org/
Processor Speed: 500 MHz core clock and 100 MHz System Clock
NOMPU: setting up cplb tables
Instruction Cache Enabled for CPU0
Data Cache Enabled for CPU0 (write-through)
Built 1 zonelists in Zone order, mobility grouping off. Total pages: 28448
Kernel command line: root=/dev/mtdblock5 rootfstype=ext2 console=ttyBF0,115200
Configuring Blackfin Priority Driven Interrupts
PID hash table entries: 512 (order: 9, 2048 bytes)
console [ttyBF0] enabled, bootconsole disabled
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Memory available: 110684k/131072k RAM, (84k init code, 1204k kernel code, 564k data, 1024k dma, 2152k reserved)
Calibrating delay loop... 989.18 BogoMIPS (lpj=494592)
Mount-cache hash table entries: 512
Blackfin Scratchpad data SRAM: 4 KB
Blackfin L1 Data A SRAM: 16 KB (15 KB free)
Blackfin L1 Data B SRAM: 16 KB (16 KB free)
Blackfin L1 Instruction SRAM: 16 KB (5 KB free)
Blackfin L2 SRAM: 128 KB (128 KB free)
net_namespace: 288 bytes
NET: Registered protocol family 16
Blackfin DMA Controller
ezkit_init(): registering device resources
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 4096 (order: 3, 32768 bytes)
TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
TCP reno registered
NET: Registered protocol family 1
JFFS2 version 2.2. (NAND) 2001-2006 Red Hat, Inc.
JFFS2: default compression mode: priority
msgmni has been set to 216
io scheduler noop registered
io scheduler anticipatory registered
io scheduler cfq registered (default)
simple-gpio: now handling 48 GPIOs: 0 - 47
Serial: Blackfin serial driver
bfin-uart.1: ttyBF0 at MMIO 0xffc00400 (irq = 35) is a BFIN-UART
brd: module loaded
smsc911x: Driver version 2007-07-13.
eth0: SMSC911x MAC Address: 00:0e:3d:20:80:01
STRIP: Version 1.3A-STUART.CHESHIRE (unlimited channels)
physmap platform flash device: 01000001 at 20000000
physmap-flash.0: Found 1 x16 devices at 0x0 in 16-bit bank
Amd/Fujitsu Extended Query Table at 0x0040
physmap-flash.0: CFI does not contain boot bank location. Assuming top.
number of CFI chips: 1
cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness.
cmdlinepart partition parsing not available
RedBoot partition parsing not available
Using physmap partition information
Creating 5 MTD partitions on "physmap-flash.0":
0x00000000-0x000a0000 : "bootloader(nor)"
0x000a0000-0x00200000 : "Default Kernel(nor)"
0x00200000-0x00600000 : "Kernel(nor)"
0x00600000-0x00700000 : "CoreB(nor)"
0x00700000-0x01000000 : "JFFS2(nor)"
uclinux[mtd]: RAM probe address=0x7000000 size=0xf00000
Creating 1 MTD partitions on "RAM":
0x00000000-0x00f00000 : "ROMfs"
i2c /dev entries driver
TCP cubic registered
NET: Registered protocol family 17
802.1Q VLAN Support v1.8 Ben Greear <greearb@candelatech.com>
All bugs added by David S. Miller <davem@redhat.com>
ieee80211: 802.11 data/management/control stack, git-1.1.13
ieee80211: Copyright (C) 2004-2005 Intel Corporation <jketreno@linux.intel.com>
VFS: Mounted root (ext2 filesystem) readonly.
Freeing unused kernel memory: 84k freed
mount: mounting none on /sys failed: No such device
mount: mounting /dev/mtdblock4 on /flash/ failed: No such file or directory
eth0: SMSC911x/921x identified at 0x2c000000, IRQ: 82
eth0: link down
BusyBox v1.13.4 (2010-01-20 16:49:21 CET) built-in shell (msh)
Enter 'help' for a list of built-in commands.
root:/> eth0: link up, 100Mbps, full-duplex, lpa 0x05E1
root:/> init: /sbin/syslogd respawning too fast
init: /bin/watchdogd respawning too fast
init: /sbin/syslogd respawning too fast
init: /bin/watchdogd respawning too fast
init: /sbin/syslogd respawning too fast
init: /bin/watchdogd respawning too fast
root:/>
root:/>
root:/>
root:/> init: /sbin/syslogd respawning too fast
init: /bin/watchdogd respawning too fast
Thanks for all help !
TranslateQuoteReplyEditDelete
2010-01-21 03:42:00 Re: problem when booting kernel
Filip Vanalme (BELGIUM)
Message: 84927
"I notice that there are still things not OK, e.g. the /dev/ directory looks like this :
root:/> ls /dev
console null pts zero
not exactly what I expected."
It looks like it does not take the information from the device_table.txt file. Why ?
TranslateQuoteReplyEditDelete
2010-01-21 03:52:57 Re: problem when booting kernel
Filip Vanalme (BELGIUM)
Message: 84929
This is the output from a make image :
FVA@tlv-thc-lx-01:~/XT100G2/build/uClinux-dist> make image
[ -d /home/FVA/XT100G2/build/uClinux-dist/images ] || mkdir /home/FVA/XT100G2/build/uClinux-dist/images
make ARCH=blackfin -C vendors image
make[1]: Entering directory `/home/FVA/XT100G2/build/uClinux-dist/vendors'
make -C /home/FVA/XT100G2/build/uClinux-dist/vendors/AnalogDevices/BF561-EZKIT-XT100G2/. dir_v=/home/FVA/XT100G2/build/uClinux-dist/vendors/AnalogDevices/BF561-EZKIT-XT100G2/. -f /home/FVA/XT100G2/build/uClinux-dist/vendors/vendors-common.mak image
make[2]: Entering directory `/home/FVA/XT100G2/build/uClinux-dist/vendors/AnalogDevices/BF561-EZKIT-XT100G2'
mkdir -p /home/FVA/XT100G2/build/uClinux-dist/images
rm -rf /home/FVA/XT100G2/build/uClinux-dist/images/*
make image.rootfs.all
make[3]: Entering directory `/home/FVA/XT100G2/build/uClinux-dist/vendors/AnalogDevices/BF561-EZKIT-XT100G2'
/home/FVA/XT100G2/build/uClinux-dist/user/genext2fs/build-host/genext2fs -m 0 -i 1024 -b 15360 -d /home/FVA/XT100G2/build/uClinux-dist/romfs -D device_table-min.txt /home/FVA/XT100G2/build/uClinux-dist/images/rootfs.ext2
/home/FVA/XT100G2/build/uClinux-dist/user/mtd-utils/mkfs.jffs2 -l -p -d /home/FVA/XT100G2/build/uClinux-dist/romfs -D device_table-min.txt -o /home/FVA/XT100G2/build/uClinux-dist/images/rootfs.jffs2
make[3]: Leaving directory `/home/FVA/XT100G2/build/uClinux-dist/vendors/AnalogDevices/BF561-EZKIT-XT100G2'
make image.kernel.all
make[3]: Entering directory `/home/FVA/XT100G2/build/uClinux-dist/vendors/AnalogDevices/BF561-EZKIT-XT100G2'
cp /home/FVA/XT100G2/build/uClinux-dist/linux-2.6.x/vmlinux /home/FVA/XT100G2/build/uClinux-dist/images/vmlinux
bfin-linux-uclibc-strip -g /home/FVA/XT100G2/build/uClinux-dist/images/vmlinux
bfin-linux-uclibc-objcopy --add-section .romfs=/home/FVA/XT100G2/build/uClinux-dist/images/rootfs.ext2 --adjust-section-vma .romfs=$(bfin-linux-uclibc-readelf -s /home/FVA/XT100G2/build/uClinux-dist/images/vmlinux | awk '$NF == "__end" {print "0x"$2}') --no-adjust-warnings --set-section-flags .romfs=alloc,load,data /home/FVA/XT100G2/build/uClinux-dist/images/vmlinux /home/FVA/XT100G2/build/uClinux-dist/images/linux.ext2
BFD: /home/FVA/XT100G2/build/uClinux-dist/images/linux.ext2: warning: allocated section `.romfs' not in segment
for fs in cramfs ext2 romfs ; do \
if [ -e "/home/FVA/XT100G2/build/uClinux-dist/images/linux.$fs" ] ; then \
ln -sf "linux.$fs" "/home/FVA/XT100G2/build/uClinux-dist/images/linux" ; \
fi ; \
done
make[3]: Leaving directory `/home/FVA/XT100G2/build/uClinux-dist/vendors/AnalogDevices/BF561-EZKIT-XT100G2'
make image.uimage.all
make[3]: Entering directory `/home/FVA/XT100G2/build/uClinux-dist/vendors/AnalogDevices/BF561-EZKIT-XT100G2'
cp /home/FVA/XT100G2/build/uClinux-dist/linux-2.6.x/arch/blackfin/boot/vmImage /home/FVA/XT100G2/build/uClinux-dist/images/vmImage
set -e; bfin-linux-uclibc-objcopy -O binary -S /home/FVA/XT100G2/build/uClinux-dist/images/linux.ext2 /home/FVA/XT100G2/build/uClinux-dist/images/linux.bin; gzip -f9 /home/FVA/XT100G2/build/uClinux-dist/images/linux.bin; /home/FVA/XT100G2/build/uClinux-dist/linux-2.6.x/scripts/mkuboot.sh -A blackfin -O linux -T kernel -C gzip -a 0x100000 -e $(bfin-linux-uclibc-nm /home/FVA/XT100G2/build/uClinux-dist/images/linux.ext2 | awk '$NF == "__start" {print $1}') -n "Linux Kernel and ext2" -d /home/FVA/XT100G2/build/uClinux-dist/images/linux.bin.gz /home/FVA/XT100G2/build/uClinux-dist/images/uImage.ext2; rm /home/FVA/XT100G2/build/uClinux-dist/images/linux.bin.gz
Image Name: Linux Kernel and ext2
Created: Thu Jan 21 09:45:52 2010
Image Type: Blackfin Linux Kernel Image (gzip compressed)
Data Size: 2565744 Bytes = 2505.61 kB = 2.45 MB
Load Address: 00100000
Entry Point: 002beb88
for fs in cramfs ext2 romfs ; do \
if [ -e "/home/FVA/XT100G2/build/uClinux-dist/images/uImage.$fs" ] ; then \
ln -sf "uImage.$fs" "/home/FVA/XT100G2/build/uClinux-dist/images/uImage" ; \
fi ; \
done
make[3]: Leaving directory `/home/FVA/XT100G2/build/uClinux-dist/vendors/AnalogDevices/BF561-EZKIT-XT100G2'
make[2]: Leaving directory `/home/FVA/XT100G2/build/uClinux-dist/vendors/AnalogDevices/BF561-EZKIT-XT100G2'
make[1]: Leaving directory `/home/FVA/XT100G2/build/uClinux-dist/vendors'
FVA@tlv-thc-lx-01:~/XT100G2/build/uClinux-dist>
TranslateQuoteReplyEditDelete
2010-01-21 04:13:10 Re: problem when booting kernel
Mike Frysinger (UNITED STATES)
Message: 84932
watchdogd - enable the watchdog driver or disable the user space daemon
syslogd - mount your root rw or make sure it has ramfs writable storage, or disable it
QuoteReplyEditDelete
2010-01-21 04:14:19 Re: problem when booting kernel
Mike Frysinger (UNITED STATES)
Message: 84933
we've moved to dynamic devices nodes. if you dislike that, change your configuration back to static.
this is all explained in the documentation:
docs.blackfin.uclinux.org/doku.php?id=uclinux-dist:dev-management