This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

NAND write results in kernel panic

Hi all,

          i am trying to write MLO, u-boot.img, uImage and ubi.img files to NAND and trying to boot from NAND on my custom board. Though i have previously flashed NAND and have successfully booted from NAND on same board, using same procedure but now i get error below while writing to NAND from Linux.

:~/testing/nand_image# ubiformat /dev/mtd8 -f ubi.img -s 2048 -o 2048
ubiformat: mtd8 (nand), size 260440064 bytes (248.4 MiB), 1987 eraseblocks of 131072 bytes (128.0 KiB), min. I/O size 2048 bytes
libscan: scanning eraseblock 1956 -- 98 % compl[ 240.415069] Unable to handle kernel paging request at virtual address 1f408024
[ 240.423278] pgd = c0004000
[ 240.426116] [1f408024] *pgd=00000000
[ 240.429901] Internal error: Oops: 5 [#1]
[ 240.434020] Modules linked in:
[ 240.437255] CPU: 0 Not tainted (3.2.0-svn46 #4)
[ 240.442382] PC is at sg_miter_stop+0x60/0xac
[ 240.446899] LR is at sg_miter_next+0x28/0x148
[ 240.451477] pc : [<c01e19ac>] lr : [<c01e1a20>] psr: 20000093
[ 240.451477] sp : df409e68 ip : df409e80 fp : df409e7c
[ 240.463562] r10: 00000013 r9 : df400140 r8 : 00001000
[ 240.469055] r7 : 00001000 r6 : 00000000 r5 : 00010000 r4 : df409ea0
[ 240.475921] r3 : 1f408020 r2 : df409e68 r1 : 00000003 r0 : df409ea0
[ 240.482788] Flags: nzCv IRQs off FIQs on Mode SVC_32 ISA ARM Segment kernel
[ 240.490570] Control: 10c5387d Table: 9e070019 DAC: 00000015
[ 240.496612] Process mmcqd/0 (pid: 1344, stack limit = 0xdf4082f0)
[ 240.503021] Stack: (0xdf409e68 to 0xdf40a000)
[ 240.507598] 9e60: 00000002 df409ea0 df409e9c df409e80 c01e1a20 c01e1958
[ 240.516235] 9e80: df420000 00010000 00000000 00001000 df409ee4 df409ea0 c01e1c1c c01e1a04
[ 240.524841] 9ea0: c062ad40 c0d6a000 00001000 00001000 df3fb000 00000002 00001000 00000003
[ 240.533447] 9ec0: df4004a0 df3fec00 df3fe804 df3fe924 df3fe800 00000000 df409efc df409ee8
[ 240.542053] 9ee0: c01e1c88 c01e1ba4 00000000 df3fe804 df409f0c df409f00 c03073a0 c01e1c78
[ 240.550659] 9f00: df409f54 df409f10 c0305eb0 c030736c fa200000 00000000 df3fea3c 00000001
[ 240.559265] 9f20: c00085b8 00000000 c0306bbc df3fec00 df3fe804 df408000 df3fe800 df3fe800
[ 240.567871] 9f40: df400578 df400140 df409f8c df409f58 c03065cc c0305e28 df3fe804 00000000
[ 240.576507] 9f60: df408000 df3fe804 00000000 df408000 00000001 df34a770 df400578 df3fe80c
[ 240.585113] 9f80: df409fbc df409f90 c0306b74 c0306474 00000000 df035cb8 df3fe804 c0306b18
[ 240.593719] 9fa0: 00000013 00000000 00000000 00000000 df409ff4 df409fc0 c00582cc c0306b24
[ 240.602325] 9fc0: df035cb8 00000000 df3fe804 00000000 df409fd0 df409fd0 00000000 df035cb8
[ 240.610931] 9fe0: c005823c c0042bc8 00000000 df409ff8 c0042bc8 c0058248 10060448 4040a200
[ 240.619537] Backtrace:
[ 240.622131] [<c01e194c>] (sg_miter_stop+0x0/0xac) from [<c01e1a20>] (sg_miter_next+0x28/0x148)
[ 240.631195] r4:df409ea0 r3:00000002
[ 240.634979] [<c01e19f8>] (sg_miter_next+0x0/0x148) from [<c01e1c1c>] (sg_copy_buffer+0x84/0xb0)
[ 240.644104] r7:00001000 r6:00000000 r5:00010000 r4:df420000
[ 240.650085] [<c01e1b98>] (sg_copy_buffer+0x0/0xb0) from [<c01e1c88>] (sg_copy_from_buffer+0x1c/0x24)
[ 240.659729] [<c01e1c6c>] (sg_copy_from_buffer+0x0/0x24) from [<c03073a0>] (mmc_queue_bounce_post+0x40/0x44)
[ 240.669982] [<c0307360>] (mmc_queue_bounce_post+0x0/0x44) from [<c0305eb0>] (mmc_blk_issue_rw_rq+0x94/0x350)
[ 240.680328] [<c0305e1c>] (mmc_blk_issue_rw_rq+0x0/0x350) from [<c03065cc>] (mmc_blk_issue_rq+0x164/0x1b4)
[ 240.690399] [<c0306468>] (mmc_blk_issue_rq+0x0/0x1b4) from [<c0306b74>] (mmc_queue_thread+0x5c/0xf0)
[ 240.700042] [<c0306b18>] (mmc_queue_thread+0x0/0xf0) from [<c00582cc>] (kthread+0x90/0x94)
[ 240.708740] [<c005823c>] (kthread+0x0/0x94) from [<c0042bc8>] (do_exit+0x0/0x2a4)
[ 240.716613] r6:c0042bc8 r5:c005823c r4:df035cb8
[ 240.721496] Code: 0a000010 e1a0200d e3c23d7f e3c3313f (e5932004)
libscan: s[ 240.728302] ---[ end trace de07c5589eda12f5 ]---
canning eraseblo[ 240.734161] note: mmcqd/0[1344] exited with preempt_count 1
libscan: scanning eraseblock 1986 -- 100 % complete
ubiformat: 1987 eraseblocks have valid erase counter, mean value is 0
ubiformat: flashing eraseblock 10 -- 1 % complete

 

I am using MT29F2G08ABA NAND (256 MiB), in Linux i have following partition for NAND

0x000000000000-0x000000020000 : "SPL"
0x000000020000-0x000000040000 : "SPL.backup1"
0x000000040000-0x000000060000 : "SPL.backup2"
0x000000060000-0x000000080000 : "SPL.backup3"
0x000000080000-0x000000260000 : "U-Boot"
0x000000260000-0x000000280000 : "U-Boot Env"
0x000000280000-0x000000780000 : "Kernel"
0x000000780000-0x0000007a0000 : "Tracability"
0x0000007a0000-0x000010000000 : "File System"

Please help me rectify the issue.

Thanks in Advance.

Regards,

Prateek