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.
Tool/software: Linux
Hello,
I'm attempting to flash NAND from Linux on my custom hardware with a AM3352. From the Linux userspace I'm flashing NAND, and everything appears to be good, but when I reboot, I boot back into the original kernel. What do I need to do to flash NAND from Linux userspace?
RIM# cat /proc/mtd dev: size erasesize name mtd0: 00020000 00020000 "SPL" mtd1: 00020000 00020000 "SPL.backup1" mtd2: 00020000 00020000 "SPL.backup2" mtd3: 00020000 00020000 "SPL.backup3" mtd4: 001e0000 00020000 "U-Boot" mtd5: 00020000 00020000 "U-Boot Env" mtd6: 00500000 00020000 "Kernel" mtd7: 07880000 00020000 "File System" mtd8: 00008000 00000001 "FRAM" RIM# uname -a Linux RIM 3.2.0-ts-armv7l #46 Mon Jun 12 16:06:45 EDT 2017 armv7l GNU/Linux RIM# flash_erase /dev/mtd6 0 0 Erasing 128 Kibyte @ 4e0000 -- 100 % complete RIM# nandwrite -p /dev/mtd6 /tmp/uImage Writing data to block 0 at offset 0x0 Writing data to block 1 at offset 0x20000 Writing data to block 2 at offset 0x40000 Writing data to block 3 at offset 0x60000 Writing data to block 4 at offset 0x80000 Writing data to block 5 at offset 0xa0000 Writing data to block 6 at offset 0xc0000 Writing data to block 7 at offset 0xe0000 Writing data to block 8 at offset 0x100000 Writing data to block 9 at offset 0x120000 Writing data to block 10 at offset 0x140000 Writing data to block 11 at offset 0x160000 Writing data to block 12 at offset 0x180000 Writing data to block 13 at offset 0x1a0000 Writing data to block 14 at offset 0x1c0000 Writing data to block 15 at offset 0x1e0000 Writing data to block 16 at offset 0x200000 Writing data to block 17 at offset 0x220000 Writing data to block 18 at offset 0x240000 Writing data to block 19 at offset 0x260000 Writing data to block 20 at offset 0x280000 Writing data to block 21 at offset 0x2a0000 Writing data to block 22 at offset 0x2c0000 Writing data to block 23 at offset 0x2e0000 Writing data to block 24 at offset 0x300000 Writing data to block 25 at offset 0x320000 Writing data to block 26 at offset 0x340000 Writing data to block 27 at offset 0x360000
Then after the reboot I check the kernel. The build date and revision should have been updated, but it still shows the old kernel.
RIM# uname -a Linux RIM 3.2.0-ts-armv7l #46 Mon Jun 12 16:06:45 EDT 2017 armv7l GNU/Linux
I know the kernel build date and revision will change because I can flash NAND from U-Boot and it works. I'm not able to get the process to work from Linux. Any Ideas?
Thanks,
-Michael
Hi Yordan,
mtd6 is the kernel partition, so I'm a bit confused why the jffs2 option (-j) would be used? Also my root filesystem is UBIFS, but I'm only trying to update my kernel. If it helps my flash_erase version is 1.5.2.
Thanks,
-Michael