From 68d70a1cf6f0d4f7f013af1652b1525042f38daf Mon Sep 17 00:00:00 2001 From: Bin Meng Date: Sun, 28 Jul 2019 08:13:58 -0700 Subject: [PATCH] x86: qemu: Fix non-working ramboot and nfsboot environment variables With qemu-x86 starting to use config_distro_bootcmd, the pre-defined ramboot and nfsboot commands do not work any more. This is caused by undefined environment variable 'ramdiskaddr' that was previously set in CONFIG_EXTRA_ENV_SETTINGS but later CONFIG_EXTRA_ENV_SETTINGS was redefined for distro boot. Update the x86 generic CONFIG_EXTRA_ENV_SETTINGS to consider distro boot, and remove the one in qemu-x86.h. Signed-off-by: Bin Meng --- include/configs/qemu-x86.h | 10 ---------- include/configs/x86-common.h | 21 ++++++++++++++------- 2 files changed, 14 insertions(+), 17 deletions(-) diff --git a/include/configs/qemu-x86.h b/include/configs/qemu-x86.h index 097ed414f8..c5574201dd 100644 --- a/include/configs/qemu-x86.h +++ b/include/configs/qemu-x86.h @@ -27,16 +27,6 @@ #define CONFIG_PREBOOT "pci enum" -#undef CONFIG_EXTRA_ENV_SETTINGS -#define CONFIG_EXTRA_ENV_SETTINGS \ - CONFIG_STD_DEVICES_SETTINGS \ - "scriptaddr=0x7000000\0" \ - "kernel_addr_r=0x1000000\0" \ - "ramdisk_addr_r=0x4000000\0" \ - "consoledev=ttyS0\0" \ - CONFIG_OTHBOOTARGS \ - BOOTENV - #define CONFIG_SYS_MONITOR_LEN (1 << 20) #define CONFIG_STD_DEVICES_SETTINGS "stdin=serial,i8042-kbd\0" \ diff --git a/include/configs/x86-common.h b/include/configs/x86-common.h index c4deef80af..ca27a4f9e2 100644 --- a/include/configs/x86-common.h +++ b/include/configs/x86-common.h @@ -105,30 +105,37 @@ #define CONFIG_OTHBOOTARGS "othbootargs=acpi=off\0" #endif +#ifndef CONFIG_DISTRO_DEFAULTS +#define BOOTENV +#endif + #define CONFIG_EXTRA_ENV_SETTINGS \ CONFIG_STD_DEVICES_SETTINGS \ "pciconfighost=1\0" \ "netdev=eth0\0" \ "consoledev=ttyS0\0" \ CONFIG_OTHBOOTARGS \ - "ramdiskaddr=0x4000000\0" \ - "ramdiskfile=initramfs.gz\0" + "scriptaddr=0x7000000\0" \ + "kernel_addr_r=0x1000000\0" \ + "ramdisk_addr_r=0x4000000\0" \ + "ramdiskfile=initramfs.gz\0" \ + BOOTENV #define CONFIG_RAMBOOTCOMMAND \ "setenv bootargs root=/dev/ram rw " \ "ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname:$netdev:off " \ "console=$consoledev,$baudrate $othbootargs;" \ - "tftpboot $loadaddr $bootfile;" \ - "tftpboot $ramdiskaddr $ramdiskfile;" \ - "zboot $loadaddr 0 $ramdiskaddr $filesize" + "tftpboot $kernel_addr_r $bootfile;" \ + "tftpboot $ramdisk_addr_r $ramdiskfile;" \ + "zboot $kernel_addr_r 0 $ramdisk_addr_r $filesize" #define CONFIG_NFSBOOTCOMMAND \ "setenv bootargs root=/dev/nfs rw " \ "nfsroot=$serverip:$rootpath " \ "ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname:$netdev:off " \ "console=$consoledev,$baudrate $othbootargs;" \ - "tftpboot $loadaddr $bootfile;" \ - "zboot $loadaddr" + "tftpboot $kernel_addr_r $bootfile;" \ + "zboot $kernel_addr_r" #endif /* __CONFIG_H */ -- 2.25.1