diff mbox series

[3/3] stm32mp1: split board and SOC support for STM32MP15x family

Message ID 20200113141742.28182-4-patrick.delaunay@st.com
State Accepted
Commit 846254888e2e1bd91edeedd208fca44eea512845
Delegated to: Patrick Delaunay
Headers show
Series stm32mp1: split board and SOC support for STM32MP15x family | expand

Commit Message

Patrick DELAUNAY Jan. 13, 2020, 2:17 p.m. UTC
Split the board and SOC support for STM32MP15x family and
prepare the introduction of new boards with STM32MP15x.

This path define the 2 configurations:
- STM32MP15x: STM32MP15x soc support (new)
- TARGET_ST_STM32MP15x: STMicroelectronics board support (choice)

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

 arch/arm/dts/Makefile               |  2 +-
 arch/arm/mach-stm32mp/Kconfig       | 32 +++++++++++++++++++++--------
 board/st/common/Kconfig             |  3 ++-
 board/st/stm32mp1/Kconfig           |  7 +------
 board/st/stm32mp1/stm32mp1.c        |  2 +-
 configs/stm32mp15_basic_defconfig   |  2 +-
 configs/stm32mp15_optee_defconfig   |  2 +-
 configs/stm32mp15_trusted_defconfig |  2 +-
 8 files changed, 32 insertions(+), 20 deletions(-)

Comments

Patrice CHOTARD Jan. 17, 2020, 12:45 p.m. UTC | #1
Hi

On 1/13/20 3:17 PM, Patrick Delaunay wrote:
> Split the board and SOC support for STM32MP15x family and
> prepare the introduction of new boards with STM32MP15x.
>
> This path define the 2 configurations:
> - STM32MP15x: STM32MP15x soc support (new)
> - TARGET_ST_STM32MP15x: STMicroelectronics board support (choice)
>
> Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
> ---
>
>  arch/arm/dts/Makefile               |  2 +-
>  arch/arm/mach-stm32mp/Kconfig       | 32 +++++++++++++++++++++--------
>  board/st/common/Kconfig             |  3 ++-
>  board/st/stm32mp1/Kconfig           |  7 +------
>  board/st/stm32mp1/stm32mp1.c        |  2 +-
>  configs/stm32mp15_basic_defconfig   |  2 +-
>  configs/stm32mp15_optee_defconfig   |  2 +-
>  configs/stm32mp15_trusted_defconfig |  2 +-
>  8 files changed, 32 insertions(+), 20 deletions(-)
>
> diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
> index 983e235f44..6aabdabdaa 100644
> --- a/arch/arm/dts/Makefile
> +++ b/arch/arm/dts/Makefile
> @@ -856,7 +856,7 @@ dtb-$(CONFIG_ARCH_ASPEED) += ast2500-evb.dtb
>  
>  dtb-$(CONFIG_ARCH_STI) += stih410-b2260.dtb
>  
> -dtb-$(CONFIG_TARGET_STM32MP1) += \
> +dtb-$(CONFIG_STM32MP15x) += \
>  	stm32mp157a-dk1.dtb \
>  	stm32mp157a-avenger96.dtb \
>  	stm32mp157c-dk2.dtb \
> diff --git a/arch/arm/mach-stm32mp/Kconfig b/arch/arm/mach-stm32mp/Kconfig
> index bf8a18a0c3..137178aa45 100644
> --- a/arch/arm/mach-stm32mp/Kconfig
> +++ b/arch/arm/mach-stm32mp/Kconfig
> @@ -33,8 +33,8 @@ config SYS_MALLOC_LEN
>  config ENV_SIZE
>  	default 0x2000
>  
> -config TARGET_STM32MP1
> -	bool "Support stm32mp1xx"
> +config STM32MP15x
> +	bool "Support STMicroelectronics STM32MP15x Soc"
>  	select ARCH_SUPPORT_PSCI if !STM32MP1_TRUSTED
>  	select CPU_V7A
>  	select CPU_V7_HAS_NONSEC if !STM32MP1_TRUSTED
> @@ -45,19 +45,35 @@ config TARGET_STM32MP1
>  	select STM32_RESET
>  	select STM32_SERIAL
>  	select SYS_ARCH_TIMER
> +	imply SYSRESET_PSCI if STM32MP1_TRUSTED
> +	imply SYSRESET_SYSCON if !STM32MP1_TRUSTED
> +	help
> +		support of STMicroelectronics SOC STM32MP15x family
> +		STM32MP157, STM32MP153 or STM32MP151
> +		STMicroelectronics MPU with core ARMv7
> +		dual core A7 for STM32MP157/3, monocore for STM32MP151
> +		target all the STMicroelectronics board with SOC STM32MP1 family
> +
> +choice
> +	prompt "STM32MP15x board select"
> +	optional
> +
> +config TARGET_ST_STM32MP15x
> +	bool "STMicroelectronics STM32MP15x boards"
> +	select STM32MP15x
>  	imply BOOTCOUNT_LIMIT
>  	imply CMD_BOOTCOUNT
>  	imply CMD_CLS if CMD_BMP
>  	imply DISABLE_CONSOLE
>  	imply PRE_CONSOLE_BUFFER
>  	imply SILENT_CONSOLE
> -	imply SYSRESET_PSCI if STM32MP1_TRUSTED
> -	imply SYSRESET_SYSCON if !STM32MP1_TRUSTED
>  	help
> -		target STMicroelectronics SOC STM32MP1 family
> -		STM32MP157, STM32MP153 or STM32MP151
> -		STMicroelectronics MPU with core ARMv7
> -		dual core A7 for STM32MP157/3, monocore for STM32MP151
> +		target the STMicroelectronics board with SOC STM32MP15x
> +		managed by board/st/stm32mp1:
> +		Evalulation board (EV1) or Discovery board (DK1 and DK2).
> +		The difference between board are managed with devicetree
> +
> +endchoice
>  
>  config STM32MP1_TRUSTED
>  	bool "Support trusted boot with TF-A"
> diff --git a/board/st/common/Kconfig b/board/st/common/Kconfig
> index 1824087afc..af01ca4891 100644
> --- a/board/st/common/Kconfig
> +++ b/board/st/common/Kconfig
> @@ -1,6 +1,7 @@
>  config CMD_STBOARD
>  	bool "stboard - command for OTP board information"
> -	default y
> +	depends on ARCH_STM32MP
> +	default y if TARGET_ST_STM32MP15x
>  	help
>  	  This compile the stboard command to
>  	  read and write the board in the OTP.
> diff --git a/board/st/stm32mp1/Kconfig b/board/st/stm32mp1/Kconfig
> index 89fc562746..c5ab7553d4 100644
> --- a/board/st/stm32mp1/Kconfig
> +++ b/board/st/stm32mp1/Kconfig
> @@ -1,4 +1,4 @@
> -if TARGET_STM32MP1
> +if TARGET_ST_STM32MP15x
>  
>  config SYS_BOARD
>  	default "stm32mp1"
> @@ -9,10 +9,5 @@ config SYS_VENDOR
>  config SYS_CONFIG_NAME
>  	default "stm32mp1"
>  
> -config TARGET_STM32MP157C_DK2
> -	bool "support of STMicroelectronics STM32MP157C-DK2 Discovery Board"
> -	default y
> -
>  source "board/st/common/Kconfig"
> -
>  endif
> diff --git a/board/st/stm32mp1/stm32mp1.c b/board/st/stm32mp1/stm32mp1.c
> index 1d4a54c902..4e298dabcb 100644
> --- a/board/st/stm32mp1/stm32mp1.c
> +++ b/board/st/stm32mp1/stm32mp1.c
> @@ -607,7 +607,7 @@ error:
>  
>  static bool board_is_dk2(void)
>  {
> -	if (CONFIG_IS_ENABLED(TARGET_STM32MP157C_DK2) &&
> +	if (CONFIG_IS_ENABLED(TARGET_ST_STM32MP15x) &&
>  	    of_machine_is_compatible("st,stm32mp157c-dk2"))
>  		return true;
>  
> diff --git a/configs/stm32mp15_basic_defconfig b/configs/stm32mp15_basic_defconfig
> index 8f0c7e9339..bc84cd3506 100644
> --- a/configs/stm32mp15_basic_defconfig
> +++ b/configs/stm32mp15_basic_defconfig
> @@ -5,7 +5,7 @@ CONFIG_ENV_SECT_SIZE=0x40000
>  CONFIG_ENV_OFFSET=0x280000
>  CONFIG_SPL_MMC_SUPPORT=y
>  CONFIG_SPL=y
> -CONFIG_TARGET_STM32MP1=y
> +CONFIG_TARGET_ST_STM32MP15x=y
>  CONFIG_SPL_SPI_FLASH_SUPPORT=y
>  CONFIG_SPL_SPI_SUPPORT=y
>  # CONFIG_ARMV7_VIRT is not set
> diff --git a/configs/stm32mp15_optee_defconfig b/configs/stm32mp15_optee_defconfig
> index b036bb738b..3bf62b4c64 100644
> --- a/configs/stm32mp15_optee_defconfig
> +++ b/configs/stm32mp15_optee_defconfig
> @@ -3,7 +3,7 @@ CONFIG_ARCH_STM32MP=y
>  CONFIG_SYS_MALLOC_F_LEN=0x3000
>  CONFIG_ENV_SECT_SIZE=0x40000
>  CONFIG_ENV_OFFSET=0x280000
> -CONFIG_TARGET_STM32MP1=y
> +CONFIG_TARGET_ST_STM32MP15x=y
>  CONFIG_STM32MP1_OPTEE=y
>  CONFIG_DISTRO_DEFAULTS=y
>  CONFIG_FIT=y
> diff --git a/configs/stm32mp15_trusted_defconfig b/configs/stm32mp15_trusted_defconfig
> index 956ba90153..f89f60ca4b 100644
> --- a/configs/stm32mp15_trusted_defconfig
> +++ b/configs/stm32mp15_trusted_defconfig
> @@ -3,7 +3,7 @@ CONFIG_ARCH_STM32MP=y
>  CONFIG_SYS_MALLOC_F_LEN=0x3000
>  CONFIG_ENV_SECT_SIZE=0x40000
>  CONFIG_ENV_OFFSET=0x280000
> -CONFIG_TARGET_STM32MP1=y
> +CONFIG_TARGET_ST_STM32MP15x=y
>  CONFIG_DISTRO_DEFAULTS=y
>  CONFIG_FIT=y
>  CONFIG_BOOTCOMMAND="run bootcmd_stm32mp"

Reviewed-by: Patrice Chotard <patrice.chotard@st.com>

Thanks
Patrick DELAUNAY Jan. 17, 2020, 3:13 p.m. UTC | #2
Hi,

> From: Patrick DELAUNAY <patrick.delaunay@st.com>
> Sent: lundi 13 janvier 2020 15:18
> 
> Split the board and SOC support for STM32MP15x family and prepare the
> introduction of new boards with STM32MP15x.
> 
> This path define the 2 configurations:
> - STM32MP15x: STM32MP15x soc support (new)
> - TARGET_ST_STM32MP15x: STMicroelectronics board support (choice)
> 
> Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
> ---

Applied to u-boot-stm32/master, thanks!

Regards
Patrick
diff mbox series

Patch

diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
index 983e235f44..6aabdabdaa 100644
--- a/arch/arm/dts/Makefile
+++ b/arch/arm/dts/Makefile
@@ -856,7 +856,7 @@  dtb-$(CONFIG_ARCH_ASPEED) += ast2500-evb.dtb
 
 dtb-$(CONFIG_ARCH_STI) += stih410-b2260.dtb
 
-dtb-$(CONFIG_TARGET_STM32MP1) += \
+dtb-$(CONFIG_STM32MP15x) += \
 	stm32mp157a-dk1.dtb \
 	stm32mp157a-avenger96.dtb \
 	stm32mp157c-dk2.dtb \
diff --git a/arch/arm/mach-stm32mp/Kconfig b/arch/arm/mach-stm32mp/Kconfig
index bf8a18a0c3..137178aa45 100644
--- a/arch/arm/mach-stm32mp/Kconfig
+++ b/arch/arm/mach-stm32mp/Kconfig
@@ -33,8 +33,8 @@  config SYS_MALLOC_LEN
 config ENV_SIZE
 	default 0x2000
 
-config TARGET_STM32MP1
-	bool "Support stm32mp1xx"
+config STM32MP15x
+	bool "Support STMicroelectronics STM32MP15x Soc"
 	select ARCH_SUPPORT_PSCI if !STM32MP1_TRUSTED
 	select CPU_V7A
 	select CPU_V7_HAS_NONSEC if !STM32MP1_TRUSTED
@@ -45,19 +45,35 @@  config TARGET_STM32MP1
 	select STM32_RESET
 	select STM32_SERIAL
 	select SYS_ARCH_TIMER
+	imply SYSRESET_PSCI if STM32MP1_TRUSTED
+	imply SYSRESET_SYSCON if !STM32MP1_TRUSTED
+	help
+		support of STMicroelectronics SOC STM32MP15x family
+		STM32MP157, STM32MP153 or STM32MP151
+		STMicroelectronics MPU with core ARMv7
+		dual core A7 for STM32MP157/3, monocore for STM32MP151
+		target all the STMicroelectronics board with SOC STM32MP1 family
+
+choice
+	prompt "STM32MP15x board select"
+	optional
+
+config TARGET_ST_STM32MP15x
+	bool "STMicroelectronics STM32MP15x boards"
+	select STM32MP15x
 	imply BOOTCOUNT_LIMIT
 	imply CMD_BOOTCOUNT
 	imply CMD_CLS if CMD_BMP
 	imply DISABLE_CONSOLE
 	imply PRE_CONSOLE_BUFFER
 	imply SILENT_CONSOLE
-	imply SYSRESET_PSCI if STM32MP1_TRUSTED
-	imply SYSRESET_SYSCON if !STM32MP1_TRUSTED
 	help
-		target STMicroelectronics SOC STM32MP1 family
-		STM32MP157, STM32MP153 or STM32MP151
-		STMicroelectronics MPU with core ARMv7
-		dual core A7 for STM32MP157/3, monocore for STM32MP151
+		target the STMicroelectronics board with SOC STM32MP15x
+		managed by board/st/stm32mp1:
+		Evalulation board (EV1) or Discovery board (DK1 and DK2).
+		The difference between board are managed with devicetree
+
+endchoice
 
 config STM32MP1_TRUSTED
 	bool "Support trusted boot with TF-A"
diff --git a/board/st/common/Kconfig b/board/st/common/Kconfig
index 1824087afc..af01ca4891 100644
--- a/board/st/common/Kconfig
+++ b/board/st/common/Kconfig
@@ -1,6 +1,7 @@ 
 config CMD_STBOARD
 	bool "stboard - command for OTP board information"
-	default y
+	depends on ARCH_STM32MP
+	default y if TARGET_ST_STM32MP15x
 	help
 	  This compile the stboard command to
 	  read and write the board in the OTP.
diff --git a/board/st/stm32mp1/Kconfig b/board/st/stm32mp1/Kconfig
index 89fc562746..c5ab7553d4 100644
--- a/board/st/stm32mp1/Kconfig
+++ b/board/st/stm32mp1/Kconfig
@@ -1,4 +1,4 @@ 
-if TARGET_STM32MP1
+if TARGET_ST_STM32MP15x
 
 config SYS_BOARD
 	default "stm32mp1"
@@ -9,10 +9,5 @@  config SYS_VENDOR
 config SYS_CONFIG_NAME
 	default "stm32mp1"
 
-config TARGET_STM32MP157C_DK2
-	bool "support of STMicroelectronics STM32MP157C-DK2 Discovery Board"
-	default y
-
 source "board/st/common/Kconfig"
-
 endif
diff --git a/board/st/stm32mp1/stm32mp1.c b/board/st/stm32mp1/stm32mp1.c
index 1d4a54c902..4e298dabcb 100644
--- a/board/st/stm32mp1/stm32mp1.c
+++ b/board/st/stm32mp1/stm32mp1.c
@@ -607,7 +607,7 @@  error:
 
 static bool board_is_dk2(void)
 {
-	if (CONFIG_IS_ENABLED(TARGET_STM32MP157C_DK2) &&
+	if (CONFIG_IS_ENABLED(TARGET_ST_STM32MP15x) &&
 	    of_machine_is_compatible("st,stm32mp157c-dk2"))
 		return true;
 
diff --git a/configs/stm32mp15_basic_defconfig b/configs/stm32mp15_basic_defconfig
index 8f0c7e9339..bc84cd3506 100644
--- a/configs/stm32mp15_basic_defconfig
+++ b/configs/stm32mp15_basic_defconfig
@@ -5,7 +5,7 @@  CONFIG_ENV_SECT_SIZE=0x40000
 CONFIG_ENV_OFFSET=0x280000
 CONFIG_SPL_MMC_SUPPORT=y
 CONFIG_SPL=y
-CONFIG_TARGET_STM32MP1=y
+CONFIG_TARGET_ST_STM32MP15x=y
 CONFIG_SPL_SPI_FLASH_SUPPORT=y
 CONFIG_SPL_SPI_SUPPORT=y
 # CONFIG_ARMV7_VIRT is not set
diff --git a/configs/stm32mp15_optee_defconfig b/configs/stm32mp15_optee_defconfig
index b036bb738b..3bf62b4c64 100644
--- a/configs/stm32mp15_optee_defconfig
+++ b/configs/stm32mp15_optee_defconfig
@@ -3,7 +3,7 @@  CONFIG_ARCH_STM32MP=y
 CONFIG_SYS_MALLOC_F_LEN=0x3000
 CONFIG_ENV_SECT_SIZE=0x40000
 CONFIG_ENV_OFFSET=0x280000
-CONFIG_TARGET_STM32MP1=y
+CONFIG_TARGET_ST_STM32MP15x=y
 CONFIG_STM32MP1_OPTEE=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_FIT=y
diff --git a/configs/stm32mp15_trusted_defconfig b/configs/stm32mp15_trusted_defconfig
index 956ba90153..f89f60ca4b 100644
--- a/configs/stm32mp15_trusted_defconfig
+++ b/configs/stm32mp15_trusted_defconfig
@@ -3,7 +3,7 @@  CONFIG_ARCH_STM32MP=y
 CONFIG_SYS_MALLOC_F_LEN=0x3000
 CONFIG_ENV_SECT_SIZE=0x40000
 CONFIG_ENV_OFFSET=0x280000
-CONFIG_TARGET_STM32MP1=y
+CONFIG_TARGET_ST_STM32MP15x=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_FIT=y
 CONFIG_BOOTCOMMAND="run bootcmd_stm32mp"