Hi All ,
a/ I am able to load u-boot.noxip.bin [UBOOT] , uImage [KERNEL] & rd-jffs2.bin [JFFS file system] on NAND [Board is DM816x EVM]
b/ When i try to boot the EVM in NAND mode i am getting KERNEL PANIC message of
//Only last part of kernel panic , please let me know if the entire log is required
ALSA device list: #0: TI81XX EVM TCP cubic registered NET: Registered protocol family 17 VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3 omap_voltage_late_init: Voltage driver support not added Power Management for TI81XX. smartreflex smartreflex: Driver initialized omap_rtc omap_rtc: setting system clock to 2000-01-01 00:00:00 UTC (946684800) ata1: SATA link down (SStatus 0 SControl 300) ata2: SATA link down (SStatus 0 SControl 300) Division by zero in kernel. Backtrace: [<c004abb8>] (dump_backtrace+0x0/0x110) from [<c039d8f4>] (dump_stack+0x18/0x1c) r7:c2eabe00 r6:c2f45000 r5:00000000 r4:00000000 [<c039d8dc>] (dump_stack+0x0/0x1c) from [<c004b3ac>] (__div0+0x18/0x20) [<c004b394>] (__div0+0x0/0x20) from [<c01b35a4>] (Ldiv0+0x8/0x10) [<c016db08>] (jffs2_do_fill_super+0x0/0x238) from [<c016e9e8>] (jffs2_fill_super+0xbc/0xd4) r7:00000001 r6:00000000 r5:c2eabe00 r4:c2f45000 [<c016e92c>] (jffs2_fill_super+0x0/0xd4) from [<c023b5f0>] (mount_mtd_aux+0x54/0xe8) r7:00000000 r6:00008000 r5:c2e5ce00 r4:c2eabe00 [<c023b59c>] (mount_mtd_aux+0x0/0xe8) from [<c023b6e0>] (mount_mtd_nr+0x5c/0x64) r7:00008000 r6:c0501928 r5:00000000 r4:c2f3fbc0 [<c023b684>] (mount_mtd_nr+0x0/0x64) from [<c023b828>] (mount_mtd+0x140/0x170) r7:c0501928 r6:00008000 r5:01f00003 r4:c2f3fbc0 [<c023b6e8>] (mount_mtd+0x0/0x170) from [<c016e6c0>] (jffs2_mount+0x1c/0x28) [<c016e6a4>] (jffs2_mount+0x0/0x28) from [<c00ca658>] (vfs_kern_mount+0xac/0x1d8) [<c00ca5ac>] (vfs_kern_mount+0x0/0x1d8) from [<c00ca7e0>] (do_kern_mount+0x3c/0xe0) [<c00ca7a4>] (do_kern_mount+0x0/0xe0) from [<c00e0290>] (do_mount+0x68c/0x6ec) r9:00000000 r8:c2f3fbc0 r7:00000020 r6:00000000 r5:00000000 r4:00008000 [<c00dfc04>] (do_mount+0x0/0x6ec) from [<c00e037c>] (sys_mount+0x8c/0xcc) [<c00e02f0>] (sys_mount+0x0/0xcc) from [<c0008f50>] (do_mount_root+0x28/0xc0) r7:c2c14000 r6:c0072de8 r5:c002ec44 r4:c2c14000 [<c0008f28>] (do_mount_root+0x0/0xc0) from [<c00091d4>] (mount_block_root+0x100/0x220) r4:c2c14000 [<c00090d4>] (mount_block_root+0x0/0x220) from [<c00093a0>] (mount_root+0xac/0xcc) [<c00092f4>] (mount_root+0x0/0xcc) from [<c0009530>] (prepare_namespace+0x170/0x1d4) r4:c0522f64 [<c00093c0>] (prepare_namespace+0x0/0x1d4) from [<c00087c4>] (kernel_init+0x114/0x154) r5:c00086b0 r4:c0522f00 [<c00086b0>] (kernel_init+0x0/0x154) from [<c0072de8>] (do_exit+0x0/0x5e4) r5:c00086b0 r4:00000000 Division by zero in kernel. Backtrace: [<c004abb8>] (dump_backtrace+0x0/0x110) from [<c039d8f4>] (dump_stack+0x18/0x1c) r7:c2eabe00 r6:c2f45000 r5:00000000 r4:00000000 [<c039d8dc>] (dump_stack+0x0/0x1c) from [<c004b3ac>] (__div0+0x18/0x20) [<c004b394>] (__div0+0x0/0x20) from [<c01b35a4>] (Ldiv0+0x8/0x10) [<c016bfcc>] (jffs2_do_mount_fs+0x0/0x648) from [<c016dc64>] (jffs2_do_fill_super+0x15c/0x238) [<c016db08>] (jffs2_do_fill_super+0x0/0x238) from [<c016e9e8>] (jffs2_fill_super+0xbc/0xd4) r7:00000001 r6:00000000 r5:c2eabe00 r4:c2f45000 [<c016e92c>] (jffs2_fill_super+0x0/0xd4) from [<c023b5f0>] (mount_mtd_aux+0x54/0xe8) r7:00000000 r6:00008000 r5:c2e5ce00 r4:c2eabe00 [<c023b59c>] (mount_mtd_aux+0x0/0xe8) from [<c023b6e0>] (mount_mtd_nr+0x5c/0x64) r7:00008000 r6:c0501928 r5:00000000 r4:c2f3fbc0 [<c023b684>] (mount_mtd_nr+0x0/0x64) from [<c023b828>] (mount_mtd+0x140/0x170) r7:c0501928 r6:00008000 r5:01f00003 r4:c2f3fbc0 [<c023b6e8>] (mount_mtd+0x0/0x170) from [<c016e6c0>] (jffs2_mount+0x1c/0x28) [<c016e6a4>] (jffs2_mount+0x0/0x28) from [<c00ca658>] (vfs_kern_mount+0xac/0x1d8) [<c00ca5ac>] (vfs_kern_mount+0x0/0x1d8) from [<c00ca7e0>] (do_kern_mount+0x3c/0xe0) [<c00ca7a4>] (do_kern_mount+0x0/0xe0) from [<c00e0290>] (do_mount+0x68c/0x6ec) r9:00000000 r8:c2f3fbc0 r7:00000020 r6:00000000 r5:00000000 r4:00008000 [<c00dfc04>] (do_mount+0x0/0x6ec) from [<c00e037c>] (sys_mount+0x8c/0xcc) [<c00e02f0>] (sys_mount+0x0/0xcc) from [<c0008f50>] (do_mount_root+0x28/0xc0) r7:c2c14000 r6:c0072de8 r5:c002ec44 r4:c2c14000 [<c0008f28>] (do_mount_root+0x0/0xc0) from [<c00091d4>] (mount_block_root+0x100/0x220) r4:c2c14000 [<c00090d4>] (mount_block_root+0x0/0x220) from [<c00093a0>] (mount_root+0xac/0xcc) [<c00092f4>] (mount_root+0x0/0xcc) from [<c0009530>] (prepare_namespace+0x170/0x1d4) r4:c0522f64 [<c00093c0>] (prepare_namespace+0x0/0x1d4) from [<c00087c4>] (kernel_init+0x114/0x154) r5:c00086b0 r4:c0522f00 [<c00086b0>] (kernel_init+0x0/0x154) from [<c0072de8>] (do_exit+0x0/0x5e4) r5:c00086b0 r4:00000000 Division by zero in kernel. Backtrace: [<c004abb8>] (dump_backtrace+0x0/0x110) from [<c039d8f4>] (dump_stack+0x18/0x1c) r7:c2c24000 r6:00000080 r5:00000000 r4:00000080 [<c039d8dc>] (dump_stack+0x0/0x1c) from [<c004b3ac>] (__div0+0x18/0x20) [<c004b394>] (__div0+0x0/0x20) from [<c01b35a4>] (Ldiv0+0x8/0x10) [<c016bfcc>] (jffs2_do_mount_fs+0x0/0x648) from [<c016dc64>] (jffs2_do_fill_super+0x15c/0x238) [<c016db08>] (jffs2_do_fill_super+0x0/0x238) from [<c016e9e8>] (jffs2_fill_super+0xbc/0xd4) r7:00000001 r6:00000000 r5:c2eabe00 r4:c2f45000 [<c016e92c>] (jffs2_fill_super+0x0/0xd4) from [<c023b5f0>] (mount_mtd_aux+0x54/0xe8) r7:00000000 r6:00008000 r5:c2e5ce00 r4:c2eabe00 [<c023b59c>] (mount_mtd_aux+0x0/0xe8) from [<c023b6e0>] (mount_mtd_nr+0x5c/0x64) r7:00008000 r6:c0501928 r5:00000000 r4:c2f3fbc0 [<c023b684>] (mount_mtd_nr+0x0/0x64) from [<c023b828>] (mount_mtd+0x140/0x170) r7:c0501928 r6:00008000 r5:01f00003 r4:c2f3fbc0 [<c023b6e8>] (mount_mtd+0x0/0x170) from [<c016e6c0>] (jffs2_mount+0x1c/0x28) [<c016e6a4>] (jffs2_mount+0x0/0x28) from [<c00ca658>] (vfs_kern_mount+0xac/0x1d8) [<c00ca5ac>] (vfs_kern_mount+0x0/0x1d8) from [<c00ca7e0>] (do_kern_mount+0x3c/0xe0) [<c00ca7a4>] (do_kern_mount+0x0/0xe0) from [<c00e0290>] (do_mount+0x68c/0x6ec) r9:00000000 r8:c2f3fbc0 r7:00000020 r6:00000000 r5:00000000 r4:00008000 [<c00dfc04>] (do_mount+0x0/0x6ec) from [<c00e037c>] (sys_mount+0x8c/0xcc) [<c00e02f0>] (sys_mount+0x0/0xcc) from [<c0008f50>] (do_mount_root+0x28/0xc0) r7:c2c14000 r6:c0072de8 r5:c002ec44 r4:c2c14000 [<c0008f28>] (do_mount_root+0x0/0xc0) from [<c00091d4>] (mount_block_root+0x100/0x220) r4:c2c14000 [<c00090d4>] (mount_block_root+0x0/0x220) from [<c00093a0>] (mount_root+0xac/0xcc) [<c00092f4>] (mount_root+0x0/0xcc) from [<c0009530>] (prepare_namespace+0x170/0x1d4) r4:c0522f64 [<c00093c0>] (prepare_namespace+0x0/0x1d4) from [<c00087c4>] (kernel_init+0x114/0x154) r5:c00086b0 r4:c0522f00 [<c00086b0>] (kernel_init+0x0/0x154) from [<c0072de8>] (do_exit+0x0/0x5e4) r5:c00086b0 r4:00000000 VFS: Mounted root (jffs2 filesystem) on device 31:3. devtmpfs: error mounting -2 Freeing init memory: 208K Kernel panic - not syncing: No init found. Try passing init= option to kernel. See Linux Documentation/init.txt for guidance. Backtrace: [<c004abb8>] (dump_backtrace+0x0/0x110) from [<c039d8f4>] (dump_stack+0x18/0x1c) r7:00000013 r6:c0072de8 r5:c00086b0 r4:c0523750 [<c039d8dc>] (dump_stack+0x0/0x1c) from [<c039d958>] (panic+0x60/0x17c) [<c039d8f8>] (panic+0x0/0x17c) from [<c003c5c8>] (init_post+0xa4/0xc4) r3:c2ea7a00 r2:00000000 r1:c05ba4e0 r0:c045bd1d [<c003c524>] (init_post+0x0/0xc4) from [<c00087c8>] (kernel_init+0x118/0x154) r5:c00086b0 r4:c0522f00 [<c00086b0>] (kernel_init+0x0/0x154) from [<c0072de8>] (do_exit+0x0/0x5e4) r5:c00086b0 r4:00000000
Please find below mentioned steps used to have EVM configured to boot from NAND :-
A) Loading the u-boot.noxip.bin (default available from prebuilts binary folder)
1. mw.b 0x81000000 0xFF 0x260000
2. tftp 0x81000000 u-boot.noxip.bin
3. nand erase 0x0 0x260000
4. nandecc hw 2
5. nand write.i 0x81000000 0x0 0x260000
6. nandecc hw 0
B) Loading the Kernel image (uImage)
1. tftp 0x81000000 uImage (Bytes transferred = 2566084 (2727c4 hex))
2. nand erase 0x00280000 0x00440000
3. nand write 0x81000000 0x00280000 0x272800 [ the size entered is made multiple of 0x800 to remove alignment error ]
C) Creating the JFFS file system
I could not find any default rd-jffs2.bin file in the /home/ashish/ti-ezsdk_dm816x-evm_5_05_02_00 directory.
Hence i tried below mentioned steps to create an JFFS file-system :-
a/ Under /home/ashish/ti-ezsdk_dm816x-evm_5_05_02_00/filesystem directory there was two tar available :-
arago-base-tisdk-image-dm816x-evm.tar.gz [ rd-jffs2.bin was around 14MB ]
ezsdk-dm816x-evm-rootfs.tar.gz [ rd-jffs2.bin was around approx 450MB ]
b/ Untar the arago-base-tisdk-image-dm816x-evm.tar.gz under /home/ashish/test.
Then created JFFS file system by :-
sudo mkfs.jffs2 -lqn –e 128 -r /home/ashish/test -o /tftpboot/rd-jffs2.bin
D) Loading the NANAD JFFS file system
a. mw.b 0x81000000 0xFF 0x0C820000
b. tftp 0x81000000 rd-jffs2.bin [ Bytes transferred = 14715080 (e088c8 hex) ]
c. nand erase clean 0x006C0000 0x0C820000
d. nand write 0x81000000 0x006C0000 0xe09000 [ the size entered is made multiple of 0x800 to remove alignment error ]
e. console=ttyO2,115200n8 root=/dev/mtdblock3 rw rootfstype=jffs2 mem=100M earlyprintk
setenv bootcmd 'nand read 0x81000000 0x00280000 0x272800;bootm 0x81000000' [ 0x272800 as mentioned in B.3]
ould you please help me to figure what mistake i am doing .
Thank You,
Ashish Kumar Mishra