[PATCH v1 9/9] stm32mp2: initial support
Patrick DELAUNAY
patrick.delaunay at foss.st.com
Thu Nov 9 10:41:25 CET 2023
Hi,
On 10/27/23 16:43, Patrice Chotard wrote:
> Add initial support for STM32MP2 SoCs family.
>
> SoCs information are available here :
> https://www.st.com/content/st_com/en/campaigns/microprocessor-stm32mp2.html
>
> Migrate all MP1 related code into stm32mp1/ directory
Minor:
MP1 => STM32MP1 series
> Create stm32mp2 directory dedicated for STM32MP2 SoCs.
>
> Common code to MP1, MP13 and MP25 is kept into
Minor
MP1 => STM32MP15
MP13 => STM32MP13
MP25 => STM32MP25
> arch/arm/mach-stm32/mach-stm32mp directory :
> - boot_params.c
> - bsec
> - cmd_stm32key
> - cmd_stm32prog
> - dram_init.c
> - syscon.c
> - ecdsa_romapi.c
>
> For STM32MP2, it also :
> - adds memory region description needed for ARMv8 MMU.
> - enables early data cache before relocation.
> During the transition before/after relocation, the MMU, initially setup
> at the beginning of DDR, must be setup again at a correct address after
> relocation. This is done in enables_caches() by disabling cache, force
> arch.tlb_fillptr to NULL which will force the MMU to be setup again but
> with a new value for gd->arch.tlb_addr. gd->arch.tlb_addr has been
> updated after relocation in arm_reserve_mmu().
>
> Signed-off-by: Patrice Chotard <patrice.chotard at foss.st.com>
> ---
>
> arch/arm/Kconfig | 2 +-
> arch/arm/mach-stm32mp/Kconfig | 26 ++-
> arch/arm/mach-stm32mp/Kconfig.25x | 43 ++++
> arch/arm/mach-stm32mp/Makefile | 15 +-
> arch/arm/mach-stm32mp/include/mach/stm32.h | 141 ++++++++-----
> .../arm/mach-stm32mp/include/mach/sys_proto.h | 26 +++
> arch/arm/mach-stm32mp/stm32mp1/Makefile | 20 ++
> arch/arm/mach-stm32mp/{ => stm32mp1}/cpu.c | 0
> arch/arm/mach-stm32mp/{ => stm32mp1}/fdt.c | 0
> arch/arm/mach-stm32mp/{ => stm32mp1}/psci.c | 0
> .../{ => stm32mp1}/pwr_regulator.c | 0
> arch/arm/mach-stm32mp/{ => stm32mp1}/spl.c | 0
> .../mach-stm32mp/{ => stm32mp1}/stm32mp13x.c | 0
> .../mach-stm32mp/{ => stm32mp1}/stm32mp15x.c | 0
> arch/arm/mach-stm32mp/{ => stm32mp1}/tzc400.c | 0
> arch/arm/mach-stm32mp/stm32mp2/Makefile | 9 +
> arch/arm/mach-stm32mp/stm32mp2/arm64-mmu.c | 68 ++++++
> arch/arm/mach-stm32mp/stm32mp2/cpu.c | 108 ++++++++++
> arch/arm/mach-stm32mp/stm32mp2/fdt.c | 16 ++
> arch/arm/mach-stm32mp/stm32mp2/stm32mp25x.c | 194 ++++++++++++++++++
> arch/arm/mach-stm32mp/syscon.c | 4 +-
> board/st/stm32mp2/Kconfig | 13 ++
> board/st/stm32mp2/MAINTAINERS | 9 +
> board/st/stm32mp2/Makefile | 6 +
> board/st/stm32mp2/stm32mp2.c | 52 +++++
> configs/stm32mp25_defconfig | 52 +++++
> include/configs/stm32mp25_common.h | 24 +++
> 27 files changed, 757 insertions(+), 71 deletions(-)
> create mode 100644 arch/arm/mach-stm32mp/Kconfig.25x
> create mode 100644 arch/arm/mach-stm32mp/stm32mp1/Makefile
> rename arch/arm/mach-stm32mp/{ => stm32mp1}/cpu.c (100%)
> rename arch/arm/mach-stm32mp/{ => stm32mp1}/fdt.c (100%)
> rename arch/arm/mach-stm32mp/{ => stm32mp1}/psci.c (100%)
> rename arch/arm/mach-stm32mp/{ => stm32mp1}/pwr_regulator.c (100%)
> rename arch/arm/mach-stm32mp/{ => stm32mp1}/spl.c (100%)
> rename arch/arm/mach-stm32mp/{ => stm32mp1}/stm32mp13x.c (100%)
> rename arch/arm/mach-stm32mp/{ => stm32mp1}/stm32mp15x.c (100%)
> rename arch/arm/mach-stm32mp/{ => stm32mp1}/tzc400.c (100%)
> create mode 100644 arch/arm/mach-stm32mp/stm32mp2/Makefile
> create mode 100644 arch/arm/mach-stm32mp/stm32mp2/arm64-mmu.c
> create mode 100644 arch/arm/mach-stm32mp/stm32mp2/cpu.c
> create mode 100644 arch/arm/mach-stm32mp/stm32mp2/fdt.c
> create mode 100644 arch/arm/mach-stm32mp/stm32mp2/stm32mp25x.c
> create mode 100644 board/st/stm32mp2/Kconfig
> create mode 100644 board/st/stm32mp2/MAINTAINERS
> create mode 100644 board/st/stm32mp2/Makefile
> create mode 100644 board/st/stm32mp2/stm32mp2.c
> create mode 100644 configs/stm32mp25_defconfig
> create mode 100644 include/configs/stm32mp25_common.h
>
with the minor remark on commit message
Reviewed-by: Patrick Delaunay <patrick.delaunay at foss.st.com>
Thanks
Patrick
More information about the U-Boot
mailing list