Stanglnator posted in the os4welt forum, that it is possible to boot a Linux distribution from a USB flash drive independent of the Linux device names like sdf1, sdg1 etc.
The problem is, that Linux doesn't always give the partitions on the USB flash drives the same device names. Sometimes the partition's name is sdf1 or sdg1 etc. Thereby it isn't possible to set up a CFE entry for a Linux distribution on a USB stick because of the changing partition names.
The solution is to use UUID (universally unique identifier). It can be used to identify a file system (partition) in a clearly independent form.
With cat /etc/fstab and ls -l /dev/disk/by-uuid you can figure out the UUID of the Linux partition.
You need an initial ramdisk (initrd) to boot a Linux system from a partition identify by UUID.
I created an initrd for the longterm kernel 4.1.12 yesterday.
Download: initrd.img-4.1.12
I will add an initrd to every new kernel.
With the following commands you can boot the Linux system from a partition identify by UUID:
Code: Select all
CFE> ramdisk -z -addr=0x24000000 -fatfs cf0:initrd.img-4.1.12
- For example:
Code: Select all
CFE> setenv bootargs "root=UUID=<a-very-large-number>"
Code: Select all
CFE> setenv bootargs "root=UUID=2d781b26-0285-421a-b9d0-d4a0d3b55680"
Code: Select all
CFE> boot -elf -noints -fatfs cf0:vmlinux-4.1
Cheers,
Christian