diff options
author | Ricardo Salveti <ricardo@foundries.io> | 2021-09-12 17:32:57 +0300 |
---|---|---|
committer | Stefano Babic <sbabic@denx.de> | 2022-02-05 15:38:38 +0300 |
commit | 8b71576f3842bee0559b3865ed0b129c417f27c9 (patch) | |
tree | aaeb9f6f078c3f0968989bd6c0b4530dc8a20bda | |
parent | 498eedc0d47f8f194698fcb082fbdf4f81f90625 (diff) | |
download | u-boot-8b71576f3842bee0559b3865ed0b129c417f27c9.tar.xz |
mx7ulp_com: add support for SPL
Add EA iMX7ULP COM board support for building SPL.
Signed-off-by: Ricardo Salveti <ricardo@foundries.io>
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io>
-rw-r--r-- | arch/arm/dts/imx7ulp-com-u-boot.dtsi | 37 | ||||
-rw-r--r-- | arch/arm/dts/imx7ulp-com.dts | 1 | ||||
-rw-r--r-- | arch/arm/mach-imx/mx7ulp/Kconfig | 12 | ||||
-rw-r--r-- | board/ea/mx7ulp_com/mx7ulp_com.c | 26 | ||||
-rw-r--r-- | include/configs/mx7ulp_com.h | 6 |
5 files changed, 82 insertions, 0 deletions
diff --git a/arch/arm/dts/imx7ulp-com-u-boot.dtsi b/arch/arm/dts/imx7ulp-com-u-boot.dtsi new file mode 100644 index 0000000000..d73bfbf7a0 --- /dev/null +++ b/arch/arm/dts/imx7ulp-com-u-boot.dtsi @@ -0,0 +1,37 @@ +// SPDX-License-Identifier: GPL-2.0+ OR X11 +/* + * Copyright 2019 Foundries.io + */ + +&iomuxc1 { + u-boot,dm-spl; +}; + +&ahbbridge0 { + u-boot,dm-spl; +}; + +&ahbbridge1 { + u-boot,dm-spl; +}; + +&lpuart4 { + u-boot,dm-spl; +}; + +&usbotg1 { + extcon = <&usbphy1>; + u-boot,dm-spl; +}; + +&usbphy1 { + u-boot,dm-spl; +}; + +&usdhc0 { + u-boot,dm-spl; +}; + +&gpio0 { + u-boot,dm-spl; +}; diff --git a/arch/arm/dts/imx7ulp-com.dts b/arch/arm/dts/imx7ulp-com.dts index c01e03dd06..dcfa37441f 100644 --- a/arch/arm/dts/imx7ulp-com.dts +++ b/arch/arm/dts/imx7ulp-com.dts @@ -6,6 +6,7 @@ /dts-v1/; #include "imx7ulp.dtsi" +#include "imx7ulp-com-u-boot.dtsi" / { model = "Embedded Artists i.MX7ULP COM"; diff --git a/arch/arm/mach-imx/mx7ulp/Kconfig b/arch/arm/mach-imx/mx7ulp/Kconfig index 56a3efd7b9..15c3ab6dae 100644 --- a/arch/arm/mach-imx/mx7ulp/Kconfig +++ b/arch/arm/mach-imx/mx7ulp/Kconfig @@ -23,6 +23,18 @@ config TARGET_MX7ULP_COM bool "Support MX7ULP COM board" select MX7ULP select SYS_ARCH_TIMER + select SPL_DM if SPL + select SPL_GPIO_SUPPORT if SPL + select SPL_LIBCOMMON_SUPPORT if SPL + select SPL_LIBDISK_SUPPORT if SPL + select SPL_LIBGENERIC_SUPPORT if SPL + select SPL_MMC_SUPPORT if SPL + select SPL_OF_CONTROL if SPL + select SPL_OF_LIBFDT if SPL + select SPL_PINCTRL if SPL + select SPL_SEPARATE_BSS if SPL + select SPL_SERIAL_SUPPORT if SPL + select SUPPORT_SPL config TARGET_MX7ULP_EVK bool "Support mx7ulp EVK board" diff --git a/board/ea/mx7ulp_com/mx7ulp_com.c b/board/ea/mx7ulp_com/mx7ulp_com.c index 7fce75ade9..cd9591a9e3 100644 --- a/board/ea/mx7ulp_com/mx7ulp_com.c +++ b/board/ea/mx7ulp_com/mx7ulp_com.c @@ -52,3 +52,29 @@ int board_init(void) return 0; } + +#ifdef CONFIG_SPL_BUILD +#include <spl.h> + +#ifdef CONFIG_SPL_LOAD_FIT +int board_fit_config_name_match(const char *name) +{ + if (!strcmp(name, "imx7ulp-com")) + return 0; + + return -1; +} +#endif + +void spl_board_init(void) +{ + preloader_console_init(); +} + +void board_init_f(ulong dummy) +{ + arch_cpu_init(); + + board_early_init_f(); +} +#endif diff --git a/include/configs/mx7ulp_com.h b/include/configs/mx7ulp_com.h index 8c4d94215b..75f5cf0b6d 100644 --- a/include/configs/mx7ulp_com.h +++ b/include/configs/mx7ulp_com.h @@ -11,6 +11,10 @@ #include <linux/sizes.h> #include <asm/arch/imx-regs.h> +#ifdef CONFIG_SPL +#include "imx7ulp_spl.h" +#endif + #define CONFIG_BOARD_POSTCLK_INIT #define CONFIG_SYS_BOOTM_LEN 0x1000000 @@ -67,5 +71,7 @@ #define CONFIG_SYS_INIT_SP_ADDR \ (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET) +#define CONFIG_ARMV7_SECURE_BASE 0x2F000000 + #define CONFIG_MXC_USB_PORTSC (PORT_PTS_UTMI | PORT_PTS_PTW) #endif /* __CONFIG_H */ |