From 541911f479bf68079269d2716589c0cc0ee732ff Mon Sep 17 00:00:00 2001 From: Thomas Hebb Date: Fri, 20 Dec 2019 18:03:43 -0800 Subject: stm32mp: remove redundant SYS_TEXT_BASE prompt The main prompt for this (defined in /Kconfig) is visible at all times, which means there's no reason to have an additional, machine-specific prompt to set the same option. Reviewed-by: Patrick Delaunay Signed-off-by: Thomas Hebb --- arch/arm/mach-stm32mp/Kconfig | 5 ----- 1 file changed, 5 deletions(-) (limited to 'arch') diff --git a/arch/arm/mach-stm32mp/Kconfig b/arch/arm/mach-stm32mp/Kconfig index ae28f6e2066..bf8a18a0c31 100644 --- a/arch/arm/mach-stm32mp/Kconfig +++ b/arch/arm/mach-stm32mp/Kconfig @@ -80,12 +80,7 @@ config STM32MP1_OPTEE OP-TEE monitor provides ST SMC to access to secure resources config SYS_TEXT_BASE - prompt "U-Boot base address" default 0xC0100000 - help - configure the U-Boot base address - when DDR driver is used: - DDR + 1MB (0xC0100000) config NR_DRAM_BANKS default 1 -- cgit v1.3.1 From e71b9a64a28d16d044d1bceda1a9e69679b2769e Mon Sep 17 00:00:00 2001 From: Marek Vasut Date: Wed, 18 Dec 2019 16:52:19 +0100 Subject: ARM: stm32: Allow overriding setup_mac_address() Let board code override setup_mac_address(), which is useful e.g. if the board derives the MAC address from another source, like an I2C EEPROM. Signed-off-by: Marek Vasut Cc: Patrick Delaunay Cc: Patrice Chotard Reviewed-by: Patrick Delaunay --- arch/arm/mach-stm32mp/cpu.c | 2 +- arch/arm/mach-stm32mp/include/mach/sys_proto.h | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) (limited to 'arch') diff --git a/arch/arm/mach-stm32mp/cpu.c b/arch/arm/mach-stm32mp/cpu.c index 6a71465494b..de7891b5c4a 100644 --- a/arch/arm/mach-stm32mp/cpu.c +++ b/arch/arm/mach-stm32mp/cpu.c @@ -456,7 +456,7 @@ static void setup_boot_mode(void) * If there is no MAC address in the environment, then it will be initialized * (silently) from the value in the OTP. */ -static int setup_mac_address(void) +__weak int setup_mac_address(void) { #if defined(CONFIG_NET) int ret; diff --git a/arch/arm/mach-stm32mp/include/mach/sys_proto.h b/arch/arm/mach-stm32mp/include/mach/sys_proto.h index 99eefabf6ec..47e57922d1e 100644 --- a/arch/arm/mach-stm32mp/include/mach/sys_proto.h +++ b/arch/arm/mach-stm32mp/include/mach/sys_proto.h @@ -30,3 +30,5 @@ u32 get_cpu_package(void); /* return boot mode */ u32 get_bootmode(void); + +int setup_mac_address(void); -- cgit v1.3.1 From 846254888e2e1bd91edeedd208fca44eea512845 Mon Sep 17 00:00:00 2001 From: Patrick Delaunay Date: Mon, 13 Jan 2020 15:17:42 +0100 Subject: stm32mp1: split board and SOC support for STM32MP15x family 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 Reviewed-by: Patrice Chotard --- 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(-) (limited to 'arch') diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile index 04a8cccda5e..8c111731711 100644 --- a/arch/arm/dts/Makefile +++ b/arch/arm/dts/Makefile @@ -862,7 +862,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 bf8a18a0c31..137178aa453 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 1824087afcf..af01ca4891c 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 89fc5627460..c5ab7553d4f 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 1d4a54c9026..4e298dabcbf 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 1061d38d8a8..0b646da2b13 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 6a112023a19..b45462b2f0f 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 35a8929ae0f..5dc530f1ab0 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" -- cgit v1.3.1 From db48e11b1eccf23f3f9ba26e886a798e74df6a01 Mon Sep 17 00:00:00 2001 From: Marek Vasut Date: Fri, 10 Jan 2020 01:28:38 +0100 Subject: ARM: dts: stm32: Add missing ETHCK clock to ethernet node Add missing 'eth-ck' clock to the ethernet node. These clock are used to generate external clock signal for the PHY in case 'st,eth_ref_clk_sel' is specified. Signed-off-by: Marek Vasut Reviewed-by: Patrick Delaunay --- arch/arm/dts/stm32mp157c.dtsi | 2 ++ 1 file changed, 2 insertions(+) (limited to 'arch') diff --git a/arch/arm/dts/stm32mp157c.dtsi b/arch/arm/dts/stm32mp157c.dtsi index 6c670cf9a36..41aea75213d 100644 --- a/arch/arm/dts/stm32mp157c.dtsi +++ b/arch/arm/dts/stm32mp157c.dtsi @@ -1404,11 +1404,13 @@ clock-names = "stmmaceth", "mac-clk-tx", "mac-clk-rx", + "eth-ck", "ethstp", "syscfg-clk"; clocks = <&rcc ETHMAC>, <&rcc ETHTX>, <&rcc ETHRX>, + <&rcc ETHCK_K>, <&rcc ETHSTP>, <&rcc SYSCFG>; st,syscon = <&syscfg 0x4>; -- cgit v1.3.1