Hi,
I consider using yaffs2 file system in dm368 ipnc platform.
Other file systems (jffs2, ubifs) are operating well now. but, yaffs2 is still occurred kernel panic.
First I patched kernel and u-boot with yaffs2 patch file. then I config kernel configuration to support yaffs2 file system.
Kernel configuration to support yaffs2 is as follows:
In u-boot config header file:
I made yaffs2 root file system image with mkyaffs2 utill in Makefile as follows:
After above sequence, I build kernel and u-boot again and write u-boot and kernel and root file system.
root file system writting command is :
mw.b 0x82000000 0xff 0x3C68A00; tftp 0x82000000 tftpboot/ipnc_dm368_yaffs2; nand erase 0xa00000 0x3C68A00; nand write.yaffs2 0x82000000 0xa00000 0x3C68A00
But, kernel panic is occurred.
Booting message are :
Loading from nand0, offset 0x400000
Image Name: Linux-2.6.37_IPNC_DM365_4.0.0
Created: 2013-02-28 2:43:20 UTC
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 4875520 Bytes = 4.6 MiB
Load Address: 80008000
Entry Point: 80008000
## Booting kernel from Legacy Image at 80700000 ...
Image Name: Linux-2.6.37_IPNC_DM365_4.0.0
Created: 2013-02-28 2:43:20 UTC
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 4875520 Bytes = 4.6 MiB
Load Address: 80008000
Entry Point: 80008000
Verifying Checksum ... OK
Loading Kernel Image ... OK
OK
Starting kernel ...
[ 0.000000] Linux version 2.6.37_IPNC_DM365_4.0.0 (bgchoi@fedora16) (gcc version 4.3.3 (GCC) ) #1 PREEMPT Thu Feb 28 11:43:20 KST 2013
[ 0.000000] CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
[ 0.000000] CPU: VIVT data cache, VIVT instruction cache
[ 0.000000] Machine: DaVinci DM36x IPNC
[ 0.000000] Memory policy: ECC disabled, Data cache writeback
[ 0.000000] DaVinci dm36x_rev1.2 variant 0x8
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 15240
[ 0.000000] Kernel command line: mem=60M console=ttyS0,115200n8 noinitrd ip=192.168.10.107:192.168.10.100:192.168.10.1:255.255.255.0:::off rw rootfstype=yaffs2 root=/dev/mtdblock3 cmemk.phys_start=0x83C00000 cmemk.phys_end=0x88000000 cmemk.phys_start_1=0x00001000 cmemk.phys_end_1=0x00008000 cmemk.pools_1=1x28672 cmemk.allowOverlap=1 cmemk.useHeapIfPoolUnavailable=1 lpj=1077248 nohz=off highres=off eth=00:0c:0c:a0:06:00
[ 0.000000] TI DaVinci EMAC: kernel boot params Ethernet address: 00:0c:0c:a0:06:00
[ 0.000000] PID hash table entries: 256 (order: -2, 1024 bytes)
[ 0.000000] Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
[ 0.000000] Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.000000] Memory: 60MB = 60MB total
[ 0.000000] Memory: 55956k/55956k available, 5484k reserved, 0K highmem
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
[ 0.000000] fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
[ 0.000000] DMA : 0xff000000 - 0xffe00000 ( 14 MB)
[ 0.000000] vmalloc : 0xc4000000 - 0xfea00000 ( 938 MB)
[ 0.000000] lowmem : 0xc0000000 - 0xc3c00000 ( 60 MB)
[ 0.000000] modules : 0xbf000000 - 0xc0000000 ( 16 MB)
[ 0.000000] .init : 0xc0008000 - 0xc002a000 ( 136 kB)
[ 0.000000] .text : 0xc002a000 - 0xc0486000 (4464 kB)
[ 0.000000] .data : 0xc0486000 - 0xc04ae500 ( 162 kB)
[ 0.000000] SLUB: Genslabs=13, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[ 0.000000] Preemptable hierarchical RCU implementation.
[ 0.000000] RCU-based detection of stalled CPUs is disabled.
[ 0.000000] Verbose stalled-CPUs detection is disabled.
[ 0.000000] NR_IRQS:245
[ 0.000000] Console: colour dummy device 80x30
[ 0.000300] Calibrating delay loop (skipped) preset value.. 215.44 BogoMIPS (lpj=1077248)
[ 0.000358] pid_max: default: 32768 minimum: 301
[ 0.000660] Mount-cache hash table entries: 512
[ 0.001451] CPU: Testing write buffer coherency: ok
[ 0.005921] DaVinci: 8 gpio irqs
[ 0.006543] NET: Registered protocol family 16
[ 0.021737] EVM: (null) video input
[ 0.109084] bio: create slab <bio-0> at 0
[ 0.114232] SCSI subsystem initialized
[ 0.118116] usbcore: registered new interface driver usbfs
[ 0.119490] usbcore: registered new interface driver hub
[ 0.120738] usbcore: registered new device driver usb
[ 0.128720] vpss vpss: dm365_vpss vpss probed
[ 0.128784] vpss vpss: dm365_vpss vpss probe success
[ 0.130443] Advanced Linux Sound Architecture Driver Version 1.0.23.
[ 0.132739] Switching to clocksource timer0_1
[ 0.196567] NET: Registered protocol family 2
[ 0.196883] IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.197680] TCP established hash table entries: 2048 (order: 2, 16384 bytes)
[ 0.197820] TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.197909] TCP: Hash tables configured (established 2048 bind 2048)
[ 0.197939] TCP reno registered
[ 0.197976] UDP hash table entries: 256 (order: 0, 4096 bytes)
[ 0.198044] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[ 0.198602] NET: Registered protocol family 1
[ 0.199664] RPC: Registered udp transport module.
[ 0.199708] RPC: Registered tcp transport module.
[ 0.199736] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 0.291274] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[ 0.291349] NTFS driver 2.1.29 [Flags: R/W].
[ 0.294438] JFFS2 version 2.2. (NAND) 짤 2001-2006 Red Hat, Inc.
[ 0.298777] fuse init (API version 7.15)
[ 0.304579] JFS: nTxBlock = 437, nTxLock = 3497
[ 0.306027] msgmni has been set to 109
[ 0.310324] io scheduler noop registered
[ 0.310372] io scheduler deadline registered (default)
[ 0.311017] io scheduler cfq registered
[ 0.312494] CSL: Module install successful, device major num = 253
[ 0.312540] CSL: Module version 0.10.00, built on Feb 28 2013 11:37:03
[ 0.312614] I2C: Module install successful, device major num = 252
[ 0.312658] DMA: Module install successful, device major num = 251
[ 0.312685] DRV: Module install successful
[ 0.312710] DRV: Module built on Feb 28 2013 11:37:04
[ 0.312736] DRV: EDMACC.QUEPRI = 00002777
[ 0.312759] DRV: SYSTEM.MSTPRI0 = 00440011
[ 0.312782] DRV: SYSTEM.MSTPRI1 = 00000444
[ 0.312805] DRV: ISP.BCR = 00000002
[ 0.312827] DRV: SYSTEM.MISC = 00000399
[ 0.312851] EDMAK module: built on Feb 28 2013 at 11:36:50
[ 0.312881] Reference Linux version 2.6.37
[ 0.314415] IRQK module: built on Feb 28 2013 at 11:36:47
[ 0.314465] Reference Linux version 2.6.37
[ 0.316044] irqk initialized
[ 0.316117] CMEMK module: built on Feb 28 2013 at 11:36:49
[ 0.316157] Reference Linux version 2.6.37
[ 0.320721] allocated heap buffer 0xc5000000 of size 0x4400000
[ 0.320764] heap fallback enabled - will try heap if pool buffer is not available
[ 0.320806] CMEM Range Overlaps Kernel Physical - allowing overlap
[ 0.320840] CMEM phys_start (0x1000) overlaps kernel (0x80000000 -> 0x83c00000)
[ 0.320990] cmemk initialized
[ 0.321047] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[ 0.345049] serial8250.0: ttyS0 at MMIO 0x1c20000 (irq = 40) is a 16550A
[ 0.911446] console [ttyS0] enabled
[ 0.936917] serial8250.0: ttyS1 at MMIO 0x1d06000 (irq = 41) is a 16550A
[ 0.947248] brd: module loaded
[ 0.959316] ONFI flash detected
[ 0.962915] ONFI param page 0 valid
[ 0.966448] NAND device: Manufacturer ID: 0x2c, Chip ID: 0xf1 (Micron NAND 128MiB 3,3V 8-bit)
[ 0.976907] nand_bbt: ECC error while reading bad block table
[ 0.982985] Creating 6 MTD partitions on "davinci_nand.0":
[ 0.988520] 0x000000000000-0x000000200000 : "bootloader"
[ 0.998172] 0x000000200000-0x000000400000 : "params"
[ 1.007261] 0x000000400000-0x000000a00000 : "kernel0"
[ 1.016522] 0x000000a00000-0x000005c00000 : "filesystem0"
[ 1.026369] 0x000005c00000-0x000006000000 : "kernel1"
[ 1.035743] 0x000006000000-0x000008000000 : "filesystem1"
[ 1.045565] davinci_nand davinci_nand.0: controller rev. 2.3
[ 1.100121] davinci_mdio davinci_mdio.0: davinci mdio revision 1.4
[ 1.106335] davinci_mdio davinci_mdio.0: detected phy mask fffffffc
[ 1.115558] davinci_mdio.0: probed
[ 1.119005] davinci_mdio davinci_mdio.0: phy[0]: device 0:00, driver unknown
[ 1.126288] davinci_mdio davinci_mdio.0: phy[1]: device 0:01, driver unknown
[ 1.135354] input: davinci_keyscan as /devices/platform/davinci_keyscan.0/input/input0
[ 1.146660] input: ADXL34x accelerometer as /devices/platform/i2c_davinci.1/i2c-1/1-0053/input/input1
[ 1.160782] rtc-m41t80 1-0068: chip found, driver version 0.05
[ 1.167667] rtc-m41t80 1-0068: rtc core: registered m41t62 as rtc0
[ 1.174966] i2c /dev entries driver
[ 1.180771] Linux media interface: v0.10
[ 1.185417] Linux video capture interface: v2.00
[ 1.192442] vpbe-osd vpbe-osd: OSD sub device probe success
[ 1.200622] vpbe-venc vpbe-venc: VENC sub device probe success
[ 1.207481] vpbe-v4l2 vpbe-v4l2: vpbe v4l2 device registered
[ 1.213533] Setting default output to Composite
[ 1.218093] Setting default mode to ntsc
[ 1.222275] vpbe-v4l2 vpbe-v4l2: Trying to register VPBE display device.
[ 1.228996] vpbe-v4l2 vpbe-v4l2: layer=c34ece00,layer->video_dev=c34ecee8
[ 1.236691] vpbe-v4l2 vpbe-v4l2: Trying to register VPBE display device.
[ 1.243645] vpbe-v4l2 vpbe-v4l2: layer=c35a5c00,layer->video_dev=c35a5ce8
[ 1.256427] vpbe-fb vpbe-fb: dm_osd0_fb: 720x480x16@0,0 with framebuffer size 675KB
[ 1.269583] vpbe-fb vpbe-fb: dm_vid0_fb: 0x0x16@0,0 with framebuffer size 1020KB
[ 1.281480] vpbe-fb vpbe-fb: dm_osd1_fb: 720x480x4@0,0 with framebuffer size 675KB
[ 1.294588] vpbe-fb vpbe-fb: dm_vid1_fb: 0x0x16@0,0 with framebuffer size 1020KB
[ 1.302242] VPBE FB Driver probe success
[ 1.306972] watchdog watchdog: heartbeat 60 sec
[ 1.317175] Error: Driver 'davinci-mcbsp' is already registered, aborting...
[ 1.327246] asoc: cq93vc-hifi <-> davinci-vcif mapping ok
[ 1.336405] ALSA device list:
[ 1.339442] #0: DaVinci DM365 EVM
[ 1.344697] TCP cubic registered
[ 1.347966] NET: Registered protocol family 17
[ 1.352907] Registering the dns_resolver key type
[ 1.365630] rtc-m41t80 1-0068: setting system clock to 2013-03-06 00:39:08 UTC (1362530348)
[ 1.376102] net eth0: attached PHY driver [Generic PHY] (mii_bus:phy_addr=0:01, id=221512)
[ 1.400849] IP-Config: Complete:
[ 1.403934] device=eth0, addr=192.168.10.107, mask=255.255.255.0, gw=192.168.10.1,
[ 1.412002] host=192.168.10.107, domain=, nis-domain=(none),
[ 1.418114] bootserver=192.168.10.100, rootserver=192.168.10.100, rootpath=
[ 1.426658] yaffs: dev is 32505859 name is "mtdblock3" rw
[ 1.432170] yaffs: passed flags ""
[ 3.370441] PHY: 0:01 - Link is Up - 100/Full
[ 4.654620] VFS: Mounted root (yaffs2 filesystem) on device 31:3.
[ 4.660860] VFS: mounted rootfs
[ 4.664163] Freeing init memory: 136K
[ 4.668044] Kernel panic - not syncing: No init found. Try passing init= option to kernel. See Linux Documentation/init.txt for guidance.
[ 4.680610] Backtrace:
[ 4.683090] Function entered at [<c002e500>] from [<c03ef9bc>]
[ 4.688935] r7:00000013
[ 4.691404] evbug.c: Event. Dev: input0, Type: 1, Code: 164, Value: 2
[ 4.698053] evbug.c: Event. Dev: input0, Type: 0, Code: 0, Value: 1
[ 4.704437] r6:c0042e0c r5:c0024330 r4:c04aec60
[ 4.709110] Function entered at [<c03ef9a4>] from [<c03efa28>]
[ 4.715020] Function entered at [<c03ef9c0>] from [<c002a644>]
[ 4.720924] r3:00000000 r2:ffff8c68 r1:c3426000 r0:c041591f
[ 4.726642] Function entered at [<c002a530>] from [<c00084b8>]
[ 4.732550] evbug.c: Event. Dev: input0, Type: 1, Code: 164, Value: 2
[ 4.739018] evbug.c: Event. Dev: input0, Type: 0, Code: 0, Value: 1
[ 4.745372] r4:c04ae518
[ 4.747928] Function entered at [<c00083a4>] from [<c0042e0
I guess root file system image or writing root file system to mtd block 3 would have some mistake.
BR,
Choi