[U-Boot] [PATCH v2 1/2] lsxl: use 64bit for LBA48 to support 4 TB drives

Cc: Prafulla Wadaskar prafulla@marvell.com Signed-off-by: Michael Walle michael@walle.cc --- Changes v2: - none --- include/configs/lsxl.h | 1 + 1 file changed, 1 insertion(+)
diff --git a/include/configs/lsxl.h b/include/configs/lsxl.h index 2ae8a27..4ad5eb8 100644 --- a/include/configs/lsxl.h +++ b/include/configs/lsxl.h @@ -160,6 +160,7 @@ #undef CONFIG_SYS_IDE_MAXDEVICE #define CONFIG_SYS_IDE_MAXDEVICE 1 #define CONFIG_SYS_ATA_IDE0_OFFSET MV_SATA_PORT0_OFFSET +#define CONFIG_SYS_64BIT_LBA #endif
#endif /* _CONFIG_LSXL_H */

Move addresses for kernel, ramdisk and fdt blob to own variables. Add dtb blob loading to all existing boot scripts, dtb filenames were taken from vanilla kernel. Introduce new boot script bootcmd_legacy, which only loads a kernel and a ramdisk. Make this the default boot script. This should also restore the behaviour of the original bootloader.
Cc: Prafulla Wadaskar prafulla@marvell.com Cc: Tom Rini trini@ti.com Signed-off-by: Michael Walle michael@walle.cc --- Changes v2: - use CONFIG_CMD_FS_GENERIC and load commands (suggested by Tom Rini) - use loadaddresses at offsets 8MB and 16MB, leaving ~8MB for the kernel please note that the kernel is copied to 0x8000 anyway. --- include/configs/lsxl.h | 40 +++++++++++++++++++++++++++++++--------- 1 file changed, 31 insertions(+), 9 deletions(-)
diff --git a/include/configs/lsxl.h b/include/configs/lsxl.h index 4ad5eb8..45794a1 100644 --- a/include/configs/lsxl.h +++ b/include/configs/lsxl.h @@ -65,6 +65,7 @@ #define CONFIG_CMD_SF #define CONFIG_CMD_SPI #define CONFIG_CMD_USB +#define CONFIG_CMD_FS_GENERIC
#define CONFIG_DOS_PARTITION #define CONFIG_EFI_PARTITION @@ -108,20 +109,41 @@ #define CONFIG_LOADADDR 0x00800000 #define CONFIG_BOOTCOMMAND "run bootcmd_${bootsource}" #define CONFIG_BOOTARGS "console=ttyS0,115200 root=/dev/sda2" + +#if defined(CONFIG_LSXHL) +#define CONFIG_FDTFILE "kirkwood-lsxhl.dtb" +#elif defined(CONFIG_LSCHLV2) +#define CONFIG_FDTFILE "kirkwood-lschlv2.dtb" +#else +#error "Unsupported board" +#endif + #define CONFIG_EXTRA_ENV_SETTINGS \ - "bootsource=hdd\0" \ + "bootsource=legacy\0" \ "hdpart=0:1\0" \ - "bootcmd_net=bootp 0x00100000 uImage " \ - "&& tftpboot 0x00800000 uInitrd " \ + "kernel_addr=0x00800000\0" \ + "ramdisk_addr=0x01000000\0" \ + "fdt_addr=0x01ff0000\0" \ + "bootcmd_legacy=ide reset " \ + "&& load ide ${hdpart} 0x00100000 /uImage.buffalo " \ + "&& load ide ${hdpart} 0x00800000 /initrd.buffalo " \ "&& bootm 0x00100000 0x00800000\0" \ + "bootcmd_net=bootp ${kernel_addr} uImage " \ + "&& tftpboot ${ramdisk_addr} uInitrd " \ + "&& tftpboot ${fdt_addr} " CONFIG_FDTFILE " " \ + "&& bootm ${kernel_addr} ${ramdisk_addr} ${fdt_addr}\0" \ "bootcmd_hdd=ide reset " \ - "&& ext2load ide ${hdpart} 0x00100000 /uImage " \ - "&& ext2load ide ${hdpart} 0x00800000 /uInitrd " \ - "&& bootm 0x00100000 0x00800000\0" \ + "&& load ide ${hdpart} ${kernel_addr} /uImage " \ + "&& load ide ${hdpart} ${ramdisk_addr} /uInitrd " \ + "&& load ide ${hdpart} ${fdt_addr} " \ + "/" CONFIG_FDTFILE " " \ + "&& bootm ${kernel_addr} ${ramdisk_addr} ${fdt_addr}\0" \ "bootcmd_usb=usb start " \ - "&& fatload usb 0:1 0x00100000 /uImage " \ - "&& fatload usb 0:1 0x00800000 /uInitrd " \ - "&& bootm 0x00100000 0x00800000\0" \ + "&& load usb 0:1 ${kernel_addr} /uImage " \ + "&& load usb 0:1 ${ramdisk_addr} /uInitrd " \ + "&& load usb 0:1 ${fdt_addr} " \ + "/" CONFIG_FDTFILE " " \ + "&& bootm ${kernel_addr} ${ramdisk_addr} ${fdt_addr}\0" \ "bootcmd_rescue=run config_nc_dhcp; run nc\0" \ "eraseenv=sf probe 0 " \ "&& sf erase " __stringify(CONFIG_ENV_OFFSET) \

Am 2014-04-01 20:09, schrieb Michael Walle:
Move addresses for kernel, ramdisk and fdt blob to own variables. Add dtb blob loading to all existing boot scripts, dtb filenames were taken from vanilla kernel. Introduce new boot script bootcmd_legacy, which only loads a kernel and a ramdisk. Make this the default boot script. This should also restore the behaviour of the original bootloader.
Cc: Prafulla Wadaskar prafulla@marvell.com Cc: Tom Rini trini@ti.com Signed-off-by: Michael Walle michael@walle.cc
Changes v2:
- use CONFIG_CMD_FS_GENERIC and load commands (suggested by Tom Rini)
- use loadaddresses at offsets 8MB and 16MB, leaving ~8MB for the
kernel please note that the kernel is copied to 0x8000 anyway.
ping :)

Am 2014-04-01 20:09, schrieb Michael Walle:
Move addresses for kernel, ramdisk and fdt blob to own variables. Add dtb blob loading to all existing boot scripts, dtb filenames were taken from vanilla kernel. Introduce new boot script bootcmd_legacy, which only loads a kernel and a ramdisk. Make this the default boot script. This should also restore the behaviour of the original bootloader.
Cc: Prafulla Wadaskar prafulla@marvell.com Cc: Tom Rini trini@ti.com Signed-off-by: Michael Walle michael@walle.cc
ping 2
albert, could you merge this? prafulla does not seem to answer.

Am Samstag, 19. April 2014, 23:52:19 schrieb Michael Walle:
Am 2014-04-01 20:09, schrieb Michael Walle:
Move addresses for kernel, ramdisk and fdt blob to own variables. Add dtb blob loading to all existing boot scripts, dtb filenames were taken from vanilla kernel. Introduce new boot script bootcmd_legacy, which only loads a kernel and a ramdisk. Make this the default boot script. This should also restore the behaviour of the original bootloader.
Cc: Prafulla Wadaskar prafulla@marvell.com Cc: Tom Rini trini@ti.com Signed-off-by: Michael Walle michael@walle.cc
ping 2
albert, could you merge this? prafulla does not seem to answer.
ping 3, anybody alive? :(

Hi Michael,
On Tue, 1 Apr 2014 20:09:14 +0200, Michael Walle michael@walle.cc wrote:
Move addresses for kernel, ramdisk and fdt blob to own variables. Add dtb blob loading to all existing boot scripts, dtb filenames were taken from vanilla kernel. Introduce new boot script bootcmd_legacy, which only loads a kernel and a ramdisk. Make this the default boot script. This should also restore the behaviour of the original bootloader.
Cc: Prafulla Wadaskar prafulla@marvell.com Cc: Tom Rini trini@ti.com Signed-off-by: Michael Walle michael@walle.cc
Changes v2:
- use CONFIG_CMD_FS_GENERIC and load commands (suggested by Tom Rini)
- use loadaddresses at offsets 8MB and 16MB, leaving ~8MB for the kernel please note that the kernel is copied to 0x8000 anyway.
include/configs/lsxl.h | 40 +++++++++++++++++++++++++++++++--------- 1 file changed, 31 insertions(+), 9 deletions(-)
diff --git a/include/configs/lsxl.h b/include/configs/lsxl.h index 4ad5eb8..45794a1 100644 --- a/include/configs/lsxl.h +++ b/include/configs/lsxl.h @@ -65,6 +65,7 @@ #define CONFIG_CMD_SF #define CONFIG_CMD_SPI #define CONFIG_CMD_USB +#define CONFIG_CMD_FS_GENERIC
#define CONFIG_DOS_PARTITION #define CONFIG_EFI_PARTITION @@ -108,20 +109,41 @@ #define CONFIG_LOADADDR 0x00800000 #define CONFIG_BOOTCOMMAND "run bootcmd_${bootsource}" #define CONFIG_BOOTARGS "console=ttyS0,115200 root=/dev/sda2"
+#if defined(CONFIG_LSXHL) +#define CONFIG_FDTFILE "kirkwood-lsxhl.dtb" +#elif defined(CONFIG_LSCHLV2) +#define CONFIG_FDTFILE "kirkwood-lschlv2.dtb" +#else +#error "Unsupported board" +#endif
#define CONFIG_EXTRA_ENV_SETTINGS \
- "bootsource=hdd\0" \
- "bootsource=legacy\0" \ "hdpart=0:1\0" \
- "bootcmd_net=bootp 0x00100000 uImage " \
"&& tftpboot 0x00800000 uInitrd " \
- "kernel_addr=0x00800000\0" \
- "ramdisk_addr=0x01000000\0" \
- "fdt_addr=0x01ff0000\0" \
- "bootcmd_legacy=ide reset " \
"&& load ide ${hdpart} 0x00100000 /uImage.buffalo " \
"&& bootm 0x00100000 0x00800000\0" \"&& load ide ${hdpart} 0x00800000 /initrd.buffalo " \
- "bootcmd_net=bootp ${kernel_addr} uImage " \
"&& tftpboot ${ramdisk_addr} uInitrd " \
"&& tftpboot ${fdt_addr} " CONFIG_FDTFILE " " \
"bootcmd_hdd=ide reset " \"&& bootm ${kernel_addr} ${ramdisk_addr} ${fdt_addr}\0" \
"&& ext2load ide ${hdpart} 0x00100000 /uImage " \
"&& ext2load ide ${hdpart} 0x00800000 /uInitrd " \
"&& bootm 0x00100000 0x00800000\0" \
"&& load ide ${hdpart} ${kernel_addr} /uImage " \
"&& load ide ${hdpart} ${ramdisk_addr} /uInitrd " \
"&& load ide ${hdpart} ${fdt_addr} " \
"/" CONFIG_FDTFILE " " \
"bootcmd_usb=usb start " \"&& bootm ${kernel_addr} ${ramdisk_addr} ${fdt_addr}\0" \
"&& fatload usb 0:1 0x00100000 /uImage " \
"&& fatload usb 0:1 0x00800000 /uInitrd " \
"&& bootm 0x00100000 0x00800000\0" \
"&& load usb 0:1 ${kernel_addr} /uImage " \
"&& load usb 0:1 ${ramdisk_addr} /uInitrd " \
"&& load usb 0:1 ${fdt_addr} " \
"/" CONFIG_FDTFILE " " \
"bootcmd_rescue=run config_nc_dhcp; run nc\0" \ "eraseenv=sf probe 0 " \ "&& sf erase " __stringify(CONFIG_ENV_OFFSET) \"&& bootm ${kernel_addr} ${ramdisk_addr} ${fdt_addr}\0" \
Applied to u-boot-arm/master, thanks!
Amicalement,

Hi Michael,
On Tue, 1 Apr 2014 20:09:13 +0200, Michael Walle michael@walle.cc wrote:
Cc: Prafulla Wadaskar prafulla@marvell.com Signed-off-by: Michael Walle michael@walle.cc
Changes v2:
- none
include/configs/lsxl.h | 1 + 1 file changed, 1 insertion(+)
diff --git a/include/configs/lsxl.h b/include/configs/lsxl.h index 2ae8a27..4ad5eb8 100644 --- a/include/configs/lsxl.h +++ b/include/configs/lsxl.h @@ -160,6 +160,7 @@ #undef CONFIG_SYS_IDE_MAXDEVICE #define CONFIG_SYS_IDE_MAXDEVICE 1 #define CONFIG_SYS_ATA_IDE0_OFFSET MV_SATA_PORT0_OFFSET +#define CONFIG_SYS_64BIT_LBA #endif
#endif /* _CONFIG_LSXL_H */
Applied to u-boot-arm/master, thanks!
Amicalement,
participants (2)
-
Albert ARIBAUD
-
Michael Walle