[yocto] dd to nand flash chip?

Ed Bartosh ed.bartosh at linux.intel.com
Mon Aug 21 01:32:05 PDT 2017


On Sat, Aug 19, 2017 at 10:31:32AM +0800, Riko wrote:
> When I did fdisk -l here was what I got :
> 
> Disk /dev/mmcblk0: 14.6 GiB, 15640559616 bytes, 30547968 sectors
> Units: sectors of 1 * 512 = 512 bytes
> Sector size (logical/physical): 512 bytes / 512 bytes
> I/O size (minimum/optimal): 512 bytes / 512 bytes
> Disklabel type: dos
> Disk identifier: 0x156b2128
> 
> Device         Boot Start     End Sectors  Size Id Type
> /dev/mmcblk0p1 *        8   42605   42598 20.8M  c W95 FAT32 (LBA)
> /dev/mmcblk0p2      42608 2171617 2129010    1G 83 Linux
> 
> 
> Disk /dev/mmcblk1: 3.6 GiB, 3825205248 bytes, 7471104 sectors
> Units: sectors of 1 * 512 = 512 bytes
> Sector size (logical/physical): 512 bytes / 512 bytes
> I/O size (minimum/optimal): 512 bytes / 512 bytes
> Disklabel type: dos
> Disk identifier: 0x19fcf925
> 
> Device         Boot Start     End Sectors  Size Id Type
> /dev/mmcblk1p1 *        8   32775   32768   16M  c W95 FAT32 (LBA)
> /dev/mmcblk1p2      32776 1546183 1513408  739M 83 Linux
> 
> 
> Disk /dev/mmcblk1boot1: 4 MiB, 4194304 bytes, 8192 sectors
> Units: sectors of 1 * 512 = 512 bytes
> Sector size (logical/physical): 512 bytes / 512 bytes
> I/O size (minimum/optimal): 512 bytes / 512 bytes
> 
> 
> Disk /dev/mmcblk1boot0: 4 MiB, 4194304 bytes, 8192 sectors
> Units: sectors of 1 * 512 = 512 bytes
> Sector size (logical/physical): 512 bytes / 512 bytes
> I/O size (minimum/optimal): 512 bytes / 512 bytes
> 
> I boot from :
> 
> Disk /dev/mmcblk0: 14.6 GiB, 15640559616 bytes, 30547968 sectors
> 
> but I can't boot from : Disk /dev/mmcblk1 which is NAND flash chip.
> 
> Is there a partition problem here ? thanks
> 

I can tell you more after I can see .wks file you're using. So far I can
guess that you're using something similar to
scripts/lib/wic/canned-wks/directdisk.wks

which uses this or similar partitioning scheme:

part /boot --source bootimg-pcbios --ondisk sda --label boot --active --align 1024
part / --source rootfs --use-uuid --fstype=ext4 --label platform --align 1024

--use-uuid option means that kernel command line in bootloader
configuration file contains root=PARTUUID=<root partition UUID>. That
works for your USB drive (/dev/mmcblk0), but doesn't work for your NAND
for some reason.

There is a simple workaround for this issue(you can switch to using
device names instead of PARTUUID in .wks). However, it would be better to
investigate and fix this properly.

As I don't have a device to reproduce this I need your help.
We can either continue here or you can contact me(ed21) on #yocto freenode channel.
There I can help you faster I hope.

Regards,
Ed

> On 18/08/17 16:58, Ed Bartosh wrote:
> >On Fri, Aug 18, 2017 at 11:40:58AM +0800, Riko wrote:
> >>Here's the boot messages :
> >>
> >>===
> >>
> >>VFS: PARTUUID= is invalid.
> >>Expected PARTUUID=<valid-uuid-id>[/PARTNROFF=%d]
> >>Disabling rootwait; root= is invalid.
> >>VFS: Cannot open root device "PARTUUID=" or unknown-block(0,0): error -6
> >Looks like you have empty PARTUUID in the kernel command line. Which wks
> >file do you use for this image? Which layers? Can you show your
> >bootloader config?
> >
> >>Please append a correct "root=" boot option; here are the available
> >>partitions:
> >>0100            4096 ram0 (driver?)
> >>0101            4096 ram1 (driver?)
> >>0102            4096 ram2 (driver?)
> >>0103            4096 ram3 (driver?)
> >>0104            4096 ram4 (driver?)
> >>0105            4096 ram5 (driver?)
> >>0106            4096 ram6 (driver?)
> >>0107            4096 ram7 (driver?)
> >>0108            4096 ram8 (driver?)
> >>0109            4096 ram9 (driver?)
> >>010a            4096 ram10 (driver?)
> >>010b            4096 ram11 (driver?)
> >>010c            4096 ram12 (driver?)
> >>010d            4096 ram13 (driver?)
> >>010e            4096 ram14 (driver?)
> >>010f            4096 ram15 (driver?)
> >>b300         3735552 mmcblk1  driver: mmcblk
> >>   b301           16384 mmcblk1p1 2848be0f-01
> >>   b302          756704 mmcblk1p2 2848be0f-02
> >>b310            4096 mmcblk1boot1 (driver?)
> >>b308            4096 mmcblk1boot0 (driver?)
> >>VFS: Unable to mount root fs on unknown-block(0,0)
> >>User configuration error - no valid root filesystem found
> >>Kernel panic - not syncing: Invalid configuration from end user
> >>prevents conting
> >>CPU: 0 PID: 1 Comm: swapper Not tainted 4.8.12-yocto-standard #3
> >>Hardware name: Generic AM33XX (Flattened Device Tree)
> >>[<c010f260>] (unwind_backtrace) from [<c010c11c>] (show_stack+0x20/0x24)
> >>[<c010c11c>] (show_stack) from [<c0493068>] (dump_stack+0x20/0x28)
> >>[<c0493068>] (dump_stack) from [<c01f20f4>] (panic+0xc0/0x22c)
> >>[<c01f20f4>] (panic) from [<c0f013ac>] (mount_block_root+0x19c/0x274)
> >>[<c0f013ac>] (mount_block_root) from [<c0f0163c>] (mount_root+0xd0/0x124)
> >>[<c0f0163c>] (mount_root) from [<c0f01810>] (prepare_namespace+0x180/0x1c0)
> >>[<c0f01810>] (prepare_namespace) from [<c0f00f3c>]
> >>(kernel_init_freeable+0x220/)
> >>[<c0f00f3c>] (kernel_init_freeable) from [<c0964fb8>]
> >>(kernel_init+0x18/0x11c)
> >>[<c0964fb8>] (kernel_init) from [<c01078b8>] (ret_from_fork+0x14/0x3c)
> >>---[ end Kernel panic - not syncing: Invalid configuration from end
> >>user preveng
> >>
> >>=====
> >>
> >>How to fix it ? thanks
> >>
> >>
> >>On 17/08/17 22:16, Leonardo Sandoval wrote:
> >>>On Thu, 2017-08-17 at 18:37 +0800, Riko Ho wrote:
> >>>>Dear Yocto Team Members,
> >>>>
> >>>>I tried to dd *.wic to nand flash but always got kernel panic, it can
> >>>>not find rootfs
> >>>>when I dd the same file to sd card, it worked.
> >>>>
> >>>from the bootloader command prompt, you may need to change the root
> >>>kernel parameter and point to the device where the filesystem resides.
> >>>
> >>>
> >>>>I copy only *.wic file to usb drive n dd it.
> >>>>Do I need the whole directory of images for dd? or I need hddimg?
> >>>>
> >>>>Regards,
> >>>>Riko
> >>>>
> >>-- 
> >>/*****
> >>Sent By
> >>Ubuntu 16.04 LTS
> >>Kernel 4.4.0-92-generic
> >>Regards,
> >>Riko H
> >>*****/
> >>
> >>-- 
> >>_______________________________________________
> >>yocto mailing list
> >>yocto at yoctoproject.org
> >>https://lists.yoctoproject.org/listinfo/yocto
> 
> -- 
> /*****
> Sent By
> Ubuntu 16.04 LTS
> Kernel 4.4.0-92-generic
> Regards,
> Riko H
> *****/
> 

-- 
--
Regards,
Ed



More information about the yocto mailing list