[U-Boot] [PATCH v2 0/3] Add usb host and ethernet boot support

This patch set adds support for usb host boot and ethernet boot support
Changes from initial version: * Used standard defines like CONFIG_SPL_USB_HOST_SUPPORT instead of introducing new defines as commented by Tom Rini.
Mugunthan V N (2): am43xx_evm: add usb host boot support am43xx_evm: add eth boot support
Tom Rini (1): am43xx: Update CONFIG_SPL_TEXT_BASE
configs/am43xx_evm_ethboot_defconfig | 5 +++++ configs/am43xx_evm_usbhost_boot_defconfig | 5 +++++ include/configs/am43xx_evm.h | 23 ++++++++++++++++++++--- 3 files changed, 30 insertions(+), 3 deletions(-) create mode 100644 configs/am43xx_evm_ethboot_defconfig create mode 100644 configs/am43xx_evm_usbhost_boot_defconfig

From: Tom Rini trini@konsulko.com
With 1.2 silicon this is now the documented starting usable point for downloading images to (and corrects a problem with peripheral booting with prior silicon). Prior silicon is OK using this address as well.
Signed-off-by: Tom Rini trini@konsulko.com Signed-off-by: Mugunthan V N mugunthanvnm@ti.com --- include/configs/am43xx_evm.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/include/configs/am43xx_evm.h b/include/configs/am43xx_evm.h index 9d65111..ade7151 100644 --- a/include/configs/am43xx_evm.h +++ b/include/configs/am43xx_evm.h @@ -42,7 +42,7 @@ #define CONFIG_POWER_TPS62362
/* SPL defines. */ -#define CONFIG_SPL_TEXT_BASE 0x40300350 +#define CONFIG_SPL_TEXT_BASE 0x402F4000 #define CONFIG_SPL_MAX_SIZE (220 << 10) /* 220KB */ #define CONFIG_SYS_SPL_ARGS_ADDR (CONFIG_SYS_SDRAM_BASE + \ (128 << 20))

On Tue, Jun 16, 2015 at 08:23:37PM +0530, Mugunthan V N wrote:
From: Tom Rini trini@konsulko.com
With 1.2 silicon this is now the documented starting usable point for downloading images to (and corrects a problem with peripheral booting with prior silicon). Prior silicon is OK using this address as well.
Signed-off-by: Tom Rini trini@konsulko.com Signed-off-by: Mugunthan V N mugunthanvnm@ti.com
Applied to u-boot/master, thanks!

While booting via usb host mode, ROM uses DMA to copy MLO over USB so ARM internal RAM cannot be used. Adding USB host boot support by introducing new config target which sets SPL_TEXT_BASE to OCMC ram.
Signed-off-by: Mugunthan V N mugunthanvnm@ti.com --- configs/am43xx_evm_usbhost_boot_defconfig | 5 +++++ include/configs/am43xx_evm.h | 12 +++++++++++- 2 files changed, 16 insertions(+), 1 deletion(-) create mode 100644 configs/am43xx_evm_usbhost_boot_defconfig
diff --git a/configs/am43xx_evm_usbhost_boot_defconfig b/configs/am43xx_evm_usbhost_boot_defconfig new file mode 100644 index 0000000..071deac --- /dev/null +++ b/configs/am43xx_evm_usbhost_boot_defconfig @@ -0,0 +1,5 @@ +CONFIG_ARM=y +CONFIG_TARGET_AM43XX_EVM=y +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1,NAND,SPL_USB_HOST_SUPPORT" +CONFIG_CMD_NET=y diff --git a/include/configs/am43xx_evm.h b/include/configs/am43xx_evm.h index ade7151..e1cd7a8 100644 --- a/include/configs/am43xx_evm.h +++ b/include/configs/am43xx_evm.h @@ -42,7 +42,16 @@ #define CONFIG_POWER_TPS62362
/* SPL defines. */ +#ifdef CONFIG_SPL_USB_HOST_SUPPORT +/* + * For USB host boot, ROM uses DMA for copying MLO from USB storage + * and ARM internal ram is not accessible for DMA, so SPL text base + * should be in OCMC ram + */ +#define CONFIG_SPL_TEXT_BASE 0x40300350 +#else #define CONFIG_SPL_TEXT_BASE 0x402F4000 +#endif #define CONFIG_SPL_MAX_SIZE (220 << 10) /* 220KB */ #define CONFIG_SYS_SPL_ARGS_ADDR (CONFIG_SYS_SDRAM_BASE + \ (128 << 20)) @@ -95,8 +104,8 @@ #define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/omap-common/u-boot-spl.lds"
/* SPL USB Support */ +#ifdef CONFIG_SPL_USB_HOST_SUPPORT #define CONFIG_SPL_USB_SUPPORT -#define CONFIG_SPL_USB_HOST_SUPPORT #define CONFIG_SYS_USB_FAT_BOOT_PARTITION 1
#define CONFIG_CMD_USB @@ -108,6 +117,7 @@
#define CONFIG_OMAP_USB_PHY #define CONFIG_AM437X_USB2PHY2_HOST +#endif
/* USB GADGET */ #if !defined(CONFIG_SPL_BUILD) || \

On Tue, Jun 16, 2015 at 08:23:38PM +0530, Mugunthan V N wrote:
While booting via usb host mode, ROM uses DMA to copy MLO over USB so ARM internal RAM cannot be used. Adding USB host boot support by introducing new config target which sets SPL_TEXT_BASE to OCMC ram.
Signed-off-by: Mugunthan V N mugunthanvnm@ti.com
Reviewed-by: Tom Rini trini@konsulko.com

On Tue, Jun 16, 2015 at 08:23:38PM +0530, Mugunthan V N wrote:
While booting via usb host mode, ROM uses DMA to copy MLO over USB so ARM internal RAM cannot be used. Adding USB host boot support by introducing new config target which sets SPL_TEXT_BASE to OCMC ram.
Signed-off-by: Mugunthan V N mugunthanvnm@ti.com Reviewed-by: Tom Rini trini@konsulko.com
Applied to u-boot/master, thanks!

add cpsw ethernet boot mode support to download spl and u-boot.img via tftp protocol. Also adding a seperate config for ethernet boot mode as the default build falcon mode and environment on MMC is defined for ethernet boot mode environment should be set to nowhere.
Signed-off-by: Mugunthan V N mugunthanvnm@ti.com --- configs/am43xx_evm_ethboot_defconfig | 5 +++++ include/configs/am43xx_evm.h | 11 +++++++++-- 2 files changed, 14 insertions(+), 2 deletions(-) create mode 100644 configs/am43xx_evm_ethboot_defconfig
diff --git a/configs/am43xx_evm_ethboot_defconfig b/configs/am43xx_evm_ethboot_defconfig new file mode 100644 index 0000000..5b07cc1 --- /dev/null +++ b/configs/am43xx_evm_ethboot_defconfig @@ -0,0 +1,5 @@ +CONFIG_ARM=y +CONFIG_TARGET_AM43XX_EVM=y +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="SERIAL1,CONS_INDEX=1,NAND,SPL_ETH_SUPPORT" +CONFIG_CMD_NET=y diff --git a/include/configs/am43xx_evm.h b/include/configs/am43xx_evm.h index e1cd7a8..0526bd4 100644 --- a/include/configs/am43xx_evm.h +++ b/include/configs/am43xx_evm.h @@ -317,11 +317,11 @@
#endif
+#ifndef CONFIG_SPL_BUILD /* CPSW Ethernet */ #define CONFIG_CMD_DHCP #define CONFIG_CMD_PING #define CONFIG_CMD_MII -#define CONFIG_DRIVER_TI_CPSW #define CONFIG_MII #define CONFIG_BOOTP_DEFAULT #define CONFIG_BOOTP_DNS @@ -331,13 +331,20 @@ #define CONFIG_BOOTP_SUBNETMASK #define CONFIG_NET_RETRY_COUNT 10 #define CONFIG_PHY_GIGE +#endif + +#define CONFIG_DRIVER_TI_CPSW #define CONFIG_PHYLIB
#define CONFIG_SPL_ENV_SUPPORT #define CONFIG_SPL_NET_VCI_STRING "AM43xx U-Boot SPL"
-#define CONFIG_SPL_ETH_SUPPORT +#if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_ETH_SUPPORT) +#undef CONFIG_ENV_IS_IN_FAT +#define CONFIG_ENV_IS_NOWHERE #define CONFIG_SPL_NET_SUPPORT +#endif + #define CONFIG_SYS_RX_ETH_BUFFER 64
/* NAND support */

On Tue, Jun 16, 2015 at 08:23:39PM +0530, Mugunthan V N wrote:
add cpsw ethernet boot mode support to download spl and u-boot.img via tftp protocol. Also adding a seperate config for ethernet boot mode as the default build falcon mode and environment on MMC is defined for ethernet boot mode environment should be set to nowhere.
Signed-off-by: Mugunthan V N mugunthanvnm@ti.com
Reviewed-by: Tom Rini trini@konsulko.com

On Tue, Jun 16, 2015 at 08:23:39PM +0530, Mugunthan V N wrote:
add cpsw ethernet boot mode support to download spl and u-boot.img via tftp protocol. Also adding a seperate config for ethernet boot mode as the default build falcon mode and environment on MMC is defined for ethernet boot mode environment should be set to nowhere.
Signed-off-by: Mugunthan V N mugunthanvnm@ti.com Reviewed-by: Tom Rini trini@konsulko.com
Applied to u-boot/master, thanks!
participants (2)
-
Mugunthan V N
-
Tom Rini