x86: theadorable-x86: Generate and pass root=PARTUUID instead of /dev/sdaX

To enable the root device selection (kernel cmd-line) via PARTUUID, this
patch enables CMD_PART on all missing theadorable-x86 boards and
changes the default environment to generate the root=PARTUUID string
automatically.

This fixes problems that have been noticed on systems with multiple
SATA/AHCI controller connected via PCIe, where the device name for the
root device / partition (/dev/sdaX) was incorrect.

Signed-off-by: Stefan Roese <sr@denx.de>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
This commit is contained in:
Stefan Roese 2018-10-22 14:07:55 +02:00 committed by Bin Meng
parent 0ca4405fcd
commit 6e1c943f3c
3 changed files with 23 additions and 14 deletions

View File

@ -26,6 +26,7 @@ CONFIG_CMD_CPU=y
CONFIG_CMD_GPIO=y
CONFIG_CMD_I2C=y
CONFIG_CMD_MMC=y
CONFIG_CMD_PART=y
CONFIG_CMD_SF=y
CONFIG_CMD_SPI=y
CONFIG_CMD_USB=y

View File

@ -25,6 +25,7 @@ CONFIG_CMD_CPU=y
CONFIG_CMD_GPIO=y
CONFIG_CMD_I2C=y
CONFIG_CMD_MMC=y
CONFIG_CMD_PART=y
CONFIG_CMD_SF=y
CONFIG_CMD_SPI=y
CONFIG_CMD_USB=y

View File

@ -62,33 +62,40 @@
"then run swupdate;" \
"else run yocto_boot;run swupdate;" \
"fi\0" \
"setroot=part uuid scsi 0:${partnr} uuid;" \
"setenv root PARTUUID=${uuid}\0" \
"setroot_ubuntu=setenv partnr ${ubuntu_part};run setroot\0" \
"setroot_yocto=setenv partnr ${yocto_part};run setroot\0" \
"ubuntu_args=setenv bootargs " \
"root=/dev/sda${ubuntu_part} ro\0" \
"root=${root} ro\0" \
"ubuntu_args_quiet=setenv bootargs " \
"root=/dev/sda${ubuntu_part} ro quiet\0" \
"root=${root} ro quiet\0" \
"ubuntu_load=load scsi 0:${ubuntu_part} 03000000 " \
"/boot/vmlinuz-${kernel-ver};" \
"load scsi 0:${ubuntu_part} 04000000 " \
"/boot/initrd.img-${kernel-ver}\0" \
"ubuntu_boot=run ubuntu_args_quiet addmtd addmisc " \
"ubuntu_load boot\0" \
"ubuntu_boot_console=run ubuntu_args addtty_ubuntu " \
"ubuntu_boot=run setroot_ubuntu ubuntu_args_quiet " \
"addmtd addmisc ubuntu_load boot\0" \
"net_args=setenv bootargs root=/dev/sda${ubuntu_part} ro\0" \
"net_boot=run start_eth net_args addtty_yocto addmtd addmisc;" \
"ubuntu_boot_console=run setroot_ubuntu ubuntu_args " \
"addtty_ubuntu addmtd addmisc ubuntu_load boot\0" \
"net_args=setenv bootargs root=${root} ro\0" \
"net_boot=run start_eth setroot_ubuntu net_args " \
"addtty_ubuntu addmtd addmisc;" \
"tftp 03000000 ${tftpdir}/bzImage;" \
"load scsi 0:${ubuntu_part} 04000000 " \
"/boot/initrd.img-${kernel-ver};" \
"run boot\0" \
"yocto_args=setenv bootargs root=/dev/sda${yocto_part} " \
"panic=1\0" \
"yocto_args_fast=setenv bootargs root=/dev/sda${yocto_part} " \
"yocto_args=setenv bootargs root=${root} " \
"panic=1\0" \
"yocto_args_fast=setenv bootargs root=${root} " \
"quiet panic=1\0" \
"yocto_boot=run yocto_args addmtd addmisc addtty_yocto;" \
"yocto_boot=run setroot_yocto yocto_args addmtd addmisc " \
"addtty_yocto;" \
"if run yocto_load;then zboot 03000000;fi\0" \
"yocto_boot_fast=run yocto_args_fast addmtd addmisc " \
"addtty_yocto yocto_load;zboot 03000000\0" \
"yocto_boot_tftp=run yocto_args addmtd addmisc addtty_yocto " \
"yocto_boot_fast=run setroot_yocto yocto_args_fast addmtd " \
"addmisc addtty_yocto yocto_load;zboot 03000000\0" \
"yocto_boot_tftp=run setroot_yocto yocto_args addmtd " \
"addmisc addtty_yocto " \
"start_eth yocto_load_tftp;zboot 03000000\0" \
"yocto_kernel=bzImage\0" \
"yocto_load=load scsi 0:${yocto_part} 03000000 " \