summaryrefslogtreecommitdiffstats
path: root/configs/platform-v7a
diff options
context:
space:
mode:
Diffstat (limited to 'configs/platform-v7a')
-rw-r--r--configs/platform-v7a/barebox-stm32mp.config24
-rw-r--r--configs/platform-v7a/barebox-stm32mp.config.diff22
-rw-r--r--configs/platform-v7a/config/images/stm32mp-optee.config61
-rw-r--r--configs/platform-v7a/config/images/stm32mp.config1
-rw-r--r--configs/platform-v7a/dts/bootstate.dtsi19
-rw-r--r--configs/platform-v7a/kernelconfig12
-rw-r--r--configs/platform-v7a/platformconfig17
-rw-r--r--configs/platform-v7a/platforms/image-stm32mp135f-dk.in13
-rw-r--r--configs/platform-v7a/platforms/tf-a-stm32mp13.in12
-rw-r--r--configs/platform-v7a/rules/barebox-stm32mp.make3
-rw-r--r--configs/platform-v7a/rules/image-stm32mp135f-dk.make34
-rw-r--r--configs/platform-v7a/rules/tf-a-stm32mp13.make110
12 files changed, 304 insertions, 24 deletions
diff --git a/configs/platform-v7a/barebox-stm32mp.config b/configs/platform-v7a/barebox-stm32mp.config
index ba40c44..f2e61e7 100644
--- a/configs/platform-v7a/barebox-stm32mp.config
+++ b/configs/platform-v7a/barebox-stm32mp.config
@@ -47,8 +47,9 @@ CONFIG_CPU_32v7=y
#
# CONFIG_BOOT_ENDIANNESS_SWITCH is not set
CONFIG_ARCH_NR_GPIO=416
+CONFIG_ARCH_STM32MP13=y
CONFIG_ARCH_STM32MP157=y
-# CONFIG_MACH_STM32MP13XX_DK is not set
+CONFIG_MACH_STM32MP13XX_DK=y
CONFIG_MACH_STM32MP15XX_DKX=y
CONFIG_MACH_LXA_MC1=y
# CONFIG_MACH_SEEED_ODYSSEY is not set
@@ -216,6 +217,9 @@ CONFIG_EXTERNAL_DTS_FRAGMENTS="${PTXDIST_PLATFORMCONFIGDIR}/dts/bootstate.dtsi"
#
# OP-TEE loading
#
+CONFIG_HAVE_OPTEE=y
+CONFIG_OPTEE_SIZE=0x03000000
+CONFIG_OPTEE_SHM_SIZE=0x400000
# CONFIG_BOOTM_OPTEE is not set
# end of OP-TEE loading
@@ -633,7 +637,9 @@ CONFIG_HAVE_CLK=y
CONFIG_CLKDEV_LOOKUP=y
CONFIG_COMMON_CLK=y
CONFIG_COMMON_CLK_OF_PROVIDER=y
+CONFIG_COMMON_CLK_STM32MP135=y
CONFIG_COMMON_CLK_STM32MP157=y
+CONFIG_COMMON_CLK_SCMI=y
CONFIG_COMMON_CLK_GPIO=y
#
@@ -715,6 +721,7 @@ CONFIG_PWM=y
CONFIG_PWM_STM32=y
CONFIG_HWRNG=y
CONFIG_HWRNG_STM32=y
+CONFIG_HW_RANDOM_OPTEE=y
#
# DMA support
@@ -752,6 +759,7 @@ CONFIG_NVMEM=y
# CONFIG_NVMEM_SNVS_LPGPR is not set
CONFIG_STM32_BSEC=y
CONFIG_STM32_BSEC_WRITE=y
+CONFIG_STM32_BSEC_OPTEE_TA=y
#
# Bus devices
@@ -764,6 +772,7 @@ CONFIG_REGULATOR_STM32_PWR=y
CONFIG_REGULATOR_STM32_VREFBUF=y
CONFIG_REGULATOR_STPMIC1=y
# CONFIG_REGULATOR_ANATOP is not set
+CONFIG_REGULATOR_ARM_SCMI=y
#
# Remoteproc drivers
@@ -776,6 +785,7 @@ CONFIG_ARCH_HAS_RESET_CONTROLLER=y
CONFIG_RESET_CONTROLLER=y
CONFIG_RESET_SIMPLE=y
# CONFIG_RESET_IMX7 is not set
+CONFIG_RESET_SCMI=y
# CONFIG_RTC_CLASS is not set
#
@@ -786,7 +796,13 @@ CONFIG_RESET_SIMPLE=y
#
# ARM System Control and Management Interface Protocol
#
-# CONFIG_ARM_SCMI_PROTOCOL is not set
+CONFIG_ARM_SCMI_PROTOCOL=y
+CONFIG_ARM_SCMI_HAVE_TRANSPORT=y
+CONFIG_ARM_SCMI_HAVE_SHMEM=y
+CONFIG_ARM_SCMI_HAVE_MSG=y
+CONFIG_ARM_SCMI_TRANSPORT_OPTEE=y
+CONFIG_ARM_SCMI_TRANSPORT_SMC=y
+# CONFIG_ARM_SCMI_POWER_DOMAIN is not set
# end of ARM System Control and Management Interface Protocol
# end of Firmware Drivers
@@ -851,7 +867,8 @@ CONFIG_STM32_FMC2_EBI=y
CONFIG_RESET_STM32=y
# CONFIG_VIRTIO_MENU is not set
# CONFIG_MAILBOX is not set
-# CONFIG_TEE is not set
+CONFIG_TEE=y
+CONFIG_OPTEE=y
# end of Drivers
#
@@ -936,6 +953,7 @@ CONFIG_NLS=y
CONFIG_ARCH_HAS_STACK_DUMP=y
CONFIG_ARCH_HAS_DATA_ABORT_MASK=y
CONFIG_ARCH_HAS_ZERO_PAGE=y
+CONFIG_IDR=y
# end of Library routines
#
diff --git a/configs/platform-v7a/barebox-stm32mp.config.diff b/configs/platform-v7a/barebox-stm32mp.config.diff
index eddcb3a..5f8844e 100644
--- a/configs/platform-v7a/barebox-stm32mp.config.diff
+++ b/configs/platform-v7a/barebox-stm32mp.config.diff
@@ -3,6 +3,7 @@
CONFIG_ARCH_HAS_RESET_CONTROLLER=y
CONFIG_ARCH_NR_GPIO=416
CONFIG_ARCH_STM32=y
+CONFIG_ARCH_STM32MP13=y
CONFIG_ARCH_STM32MP157=y
CONFIG_ARCH_STM32MP=y
# CONFIG_ARCH_TEXT_BASE is undefined
@@ -11,6 +12,13 @@ CONFIG_ARM_BOARD_APPEND_ATAG=y
# CONFIG_ARM_BOARD_PREPEND_ATAG is not set
CONFIG_ARM_PSCI_CLIENT=y
CONFIG_ARM_PSCI_OF=y
+CONFIG_ARM_SCMI_HAVE_MSG=y
+CONFIG_ARM_SCMI_HAVE_SHMEM=y
+CONFIG_ARM_SCMI_HAVE_TRANSPORT=y
+# CONFIG_ARM_SCMI_POWER_DOMAIN is not set
+CONFIG_ARM_SCMI_PROTOCOL=y
+CONFIG_ARM_SCMI_TRANSPORT_OPTEE=y
+CONFIG_ARM_SCMI_TRANSPORT_SMC=y
# CONFIG_ARM_SECURE_MONITOR is undefined
CONFIG_AT803X_PHY=y
# CONFIG_BOARD_ARM_GENERIC_DT is not set
@@ -30,6 +38,8 @@ CONFIG_CMD_POWEROFF=y
# CONFIG_CMD_PWM is not set
# CONFIG_CMD_SPI is undefined
# CONFIG_CMD_STACKSMASH is not set
+CONFIG_COMMON_CLK_SCMI=y
+CONFIG_COMMON_CLK_STM32MP135=y
CONFIG_COMMON_CLK_STM32MP157=y
CONFIG_COMPILE_LOGLEVEL=6
# CONFIG_CONSOLE_ACTIVATE_FIRST is not set
@@ -52,11 +62,14 @@ CONFIG_EEPROM_AT24=y
CONFIG_GENERIC_PHY=y
# CONFIG_GPIO_74164 is undefined
# CONFIG_GPIO_RASPBERRYPI_EXP is undefined
+CONFIG_HAVE_OPTEE=y
CONFIG_HWRNG_STM32=y
+CONFIG_HW_RANDOM_OPTEE=y
# CONFIG_I2C_ALGOBIT is undefined
# CONFIG_I2C_BCM283X is undefined
# CONFIG_I2C_GPIO is not set
CONFIG_I2C_STM32=y
+CONFIG_IDR=y
CONFIG_LED_PWM=y
# CONFIG_LED_TRIGGERS is not set
# CONFIG_LIBFDT is undefined
@@ -71,7 +84,7 @@ CONFIG_MACH_LXA_MC1=y
# CONFIG_MACH_RPI_CM3 is undefined
# CONFIG_MACH_RPI_COMMON is undefined
# CONFIG_MACH_SEEED_ODYSSEY is not set
-# CONFIG_MACH_STM32MP13XX_DK is not set
+CONFIG_MACH_STM32MP13XX_DK=y
CONFIG_MACH_STM32MP15XX_DKX=y
CONFIG_MACH_STM32MP15X_EV1=y
# CONFIG_MCI_BCM283X is undefined
@@ -108,6 +121,9 @@ CONFIG_NVMEM=y
# CONFIG_NVMEM_REBOOT_MODE is not set
# CONFIG_NVMEM_RMEM is not set
# CONFIG_NVMEM_SNVS_LPGPR is not set
+CONFIG_OPTEE=y
+CONFIG_OPTEE_SHM_SIZE=0x400000
+CONFIG_OPTEE_SIZE=0x03000000
# CONFIG_PARTITION_DISK_EFI_GPT_COMPARE is not set
# CONFIG_PARTITION_DISK_EFI_GPT_NO_FORCE is not set
CONFIG_PBL_CONSOLE=y
@@ -122,6 +138,7 @@ CONFIG_PWM_STM32=y
CONFIG_REGMAP_FORMATTED=y
CONFIG_REGMAP_I2C=y
# CONFIG_REGULATOR_ANATOP is not set
+CONFIG_REGULATOR_ARM_SCMI=y
# CONFIG_REGULATOR_BCM283X is undefined
CONFIG_REGULATOR_FIXED=y
CONFIG_REGULATOR_STM32_PWR=y
@@ -130,6 +147,7 @@ CONFIG_REGULATOR_STPMIC1=y
CONFIG_REMOTEPROC=y
CONFIG_RESET_CONTROLLER=y
# CONFIG_RESET_IMX7 is not set
+CONFIG_RESET_SCMI=y
CONFIG_RESET_SIMPLE=y
CONFIG_RESET_STM32=y
# CONFIG_SPI is not set
@@ -139,6 +157,7 @@ CONFIG_STACKPROTECTOR=y
CONFIG_STACKPROTECTOR_STRONG=y
CONFIG_STACK_GUARD_PAGE=y
CONFIG_STM32_BSEC=y
+CONFIG_STM32_BSEC_OPTEE_TA=y
CONFIG_STM32_BSEC_WRITE=y
CONFIG_STM32_FMC2_EBI=y
CONFIG_STM32_IMAGE=y
@@ -146,6 +165,7 @@ CONFIG_STM32_IWDG_WATCHDOG=y
CONFIG_STM32_REMOTEPROC=y
# CONFIG_STPMIC1_WATCHDOG is not set
# CONFIG_SYSCON_REBOOT_MODE is not set
+CONFIG_TEE=y
CONFIG_THUMB2_BAREBOX=y
CONFIG_USB_DWC2=y
CONFIG_USB_DWC2_GADGET=y
diff --git a/configs/platform-v7a/config/images/stm32mp-optee.config b/configs/platform-v7a/config/images/stm32mp-optee.config
new file mode 100644
index 0000000..be3a4b6
--- /dev/null
+++ b/configs/platform-v7a/config/images/stm32mp-optee.config
@@ -0,0 +1,61 @@
+image @IMAGE@ {
+ hdimage {
+ align = 1M
+ partition-table-type = gpt
+ gpt-no-backup = true
+ }
+
+ /* below three partitions are unused when booting from eMMC boot partition */
+ partition fsbl1 {
+ image = "stm32mp1-tf-a-@STM32MP_BOARD@.stm32"
+ size = 256K
+ }
+ partition fsbl2 {
+ image = "stm32mp1-tf-a-@STM32MP_BOARD@.stm32"
+ size = 256K
+ }
+ partition fip {
+ image = "@STM32MP_BOARD@.fip"
+ size = 2M
+ }
+
+ partition barebox-environment {
+ partition-type-uuid = 6c3737f2-07f8-45d1-ad45-15d260aab24d
+ size = 1M
+ }
+ partition barebox-state {
+ partition-type-uuid = barebox-state
+ size = 1M
+ }
+ partition root-A {
+ partition-type-uuid = root-arm
+ image = root.ext2
+ }
+}
+
+image @STM32MP_BOARD@-emmcboot.img {
+ hdimage {
+ partition-table = false
+ }
+
+ partition fsbl {
+ image = "stm32mp1-tf-a-@STM32MP_BOARD@.stm32"
+ size = 256K
+ }
+
+ partition fip {
+ image = "@STM32MP_BOARD@.fip"
+ offset = 256K
+ }
+}
+
+image @STM32MP_BOARD@.fip {
+ fip {
+ fw-config = "stm32mp1-@STM32MP_BOARD@-fw-config.dtb"
+ hw-config = "@STM32MP_BOARD@.dtb-bb"
+ nt-fw = "barebox-stm32mp-generic-bl33.img"
+ tos-fw = { "tee-header_v2.bin", "tee-pager_v2.bin", "tee-pageable_v2.bin" }
+ }
+ size = 2M
+}
+/* vim: set tabstop=8 noexpandtab : */
diff --git a/configs/platform-v7a/config/images/stm32mp.config b/configs/platform-v7a/config/images/stm32mp.config
index f75d6ad..45d3c00 100644
--- a/configs/platform-v7a/config/images/stm32mp.config
+++ b/configs/platform-v7a/config/images/stm32mp.config
@@ -20,6 +20,7 @@ image @IMAGE@ {
}
partition barebox-environment {
+ partition-type-uuid = "6c3737f2-07f8-45d1-ad45-15d260aab24d"
size = 1M
}
partition barebox-state {
diff --git a/configs/platform-v7a/dts/bootstate.dtsi b/configs/platform-v7a/dts/bootstate.dtsi
index cd24d74..c0cade1 100644
--- a/configs/platform-v7a/dts/bootstate.dtsi
+++ b/configs/platform-v7a/dts/bootstate.dtsi
@@ -25,12 +25,9 @@
barebox: partition@0 {
label = "barebox";
- reg = <0x0 0x0 0x0 0xc000>;
- };
- environment: partition@c0000 {
- label = "barebox-environment";
- reg = <0x0 0xc0000 0x0 0x20000>;
+ reg = <0x0 0x0 0x0 0xe0000>;
};
+
backend_state_mmc1: partition@e0000 {
label = "state";
reg = <0x0 0xe0000 0x0 0x20000>;
@@ -61,7 +58,11 @@
};
};
+#ifdef bcm2711_rpi_4_dts
+&emmc2 {
+#else
&sdhost {
+#endif
#address-cells = <1>;
#size-cells = <1>;
@@ -69,11 +70,6 @@
label = "barebox-state";
reg = <0x100000 0x100000>;
};
-
- partition@200000 {
- label = "barebox-environment";
- reg = <0x200000 0x100000>;
- };
};
#endif
@@ -107,7 +103,8 @@
/** STM32MP1 ******************************************************************/
#if defined(stm32mp157c_lxa_mc1_dts) || \
defined(stm32mp157c_dk2_dts) || \
- defined(stm32mp157c_ev1_dts)
+ defined(stm32mp157c_ev1_dts) || \
+ defined(stm32mp135f_dk_dts)
/ {
aliases {
state = &state_mmc0;
diff --git a/configs/platform-v7a/kernelconfig b/configs/platform-v7a/kernelconfig
index 9087a8a..e6fadf5 100644
--- a/configs/platform-v7a/kernelconfig
+++ b/configs/platform-v7a/kernelconfig
@@ -2,9 +2,9 @@
# Automatically generated file; DO NOT EDIT.
# Linux/arm 6.8 Kernel Configuration
#
-CONFIG_CC_VERSION_TEXT="arm-v7a-linux-gnueabihf-gcc (OSELAS.Toolchain-2023.07.0 13-20230624) 13.1.1 20230624"
+CONFIG_CC_VERSION_TEXT="arm-v7a-linux-gnueabihf-gcc (OSELAS.Toolchain-2023.07.1 13-20231118) 13.2.1 20231118"
CONFIG_CC_IS_GCC=y
-CONFIG_GCC_VERSION=130101
+CONFIG_GCC_VERSION=130201
CONFIG_CLANG_VERSION=0
CONFIG_AS_IS_GNU=y
CONFIG_AS_VERSION=24000
@@ -1248,7 +1248,9 @@ CONFIG_ARM_SCMI_PROTOCOL=y
# CONFIG_ARM_SCMI_RAW_MODE_SUPPORT is not set
CONFIG_ARM_SCMI_HAVE_TRANSPORT=y
CONFIG_ARM_SCMI_HAVE_SHMEM=y
+CONFIG_ARM_SCMI_HAVE_MSG=y
CONFIG_ARM_SCMI_TRANSPORT_MAILBOX=y
+CONFIG_ARM_SCMI_TRANSPORT_OPTEE=y
CONFIG_ARM_SCMI_TRANSPORT_SMC=y
# CONFIG_ARM_SCMI_TRANSPORT_SMC_ATOMIC_ENABLE is not set
# CONFIG_ARM_SCMI_TRANSPORT_VIRTIO is not set
@@ -1931,6 +1933,7 @@ CONFIG_HW_RANDOM_IPROC_RNG200=y
CONFIG_HW_RANDOM_OMAP=y
CONFIG_HW_RANDOM_VIRTIO=y
CONFIG_HW_RANDOM_STM32=y
+CONFIG_HW_RANDOM_OPTEE=y
# CONFIG_HW_RANDOM_CCTRNG is not set
# CONFIG_HW_RANDOM_XIPHERA is not set
# CONFIG_HW_RANDOM_ARM_SMCCC_TRNG is not set
@@ -3106,6 +3109,7 @@ CONFIG_RTC_I2C_AND_SPI=y
# CONFIG_RTC_DRV_M48T59 is not set
# CONFIG_RTC_DRV_MSM6242 is not set
# CONFIG_RTC_DRV_RP5C01 is not set
+# CONFIG_RTC_DRV_OPTEE is not set
# CONFIG_RTC_DRV_ZYNQMP is not set
#
@@ -3578,6 +3582,7 @@ CONFIG_NVMEM_IMX_OCOTP_ELE=y
# CONFIG_NVMEM_MICROCHIP_OTPC is not set
CONFIG_NVMEM_RMEM=y
# CONFIG_NVMEM_SNVS_LPGPR is not set
+CONFIG_NVMEM_STM32_BSEC_OPTEE_TA=y
CONFIG_NVMEM_STM32_ROMEM=y
# CONFIG_NVMEM_U_BOOT_ENV is not set
@@ -3590,7 +3595,8 @@ CONFIG_NVMEM_STM32_ROMEM=y
# CONFIG_FPGA is not set
# CONFIG_FSI is not set
-# CONFIG_TEE is not set
+CONFIG_TEE=y
+CONFIG_OPTEE=y
CONFIG_MULTIPLEXER=y
#
diff --git a/configs/platform-v7a/platformconfig b/configs/platform-v7a/platformconfig
index 2efae02..f9cdc0f 100644
--- a/configs/platform-v7a/platformconfig
+++ b/configs/platform-v7a/platformconfig
@@ -69,7 +69,7 @@ PTXCONF_SYSROOT_CROSS="${PTXDIST_PLATFORMDIR}/sysroot-cross"
# toolchain
#
PTXCONF_CROSSCHAIN_VENDOR="OSELAS.Toolchain-2023.07"
-PTXCONF_CROSSCHAIN_CHECK="13.1.1"
+PTXCONF_CROSSCHAIN_CHECK="13.2.1"
PTXCONF_LIBC_GLIBC=y
# PTXCONF_LIBC_UCLIBC is not set
PTXCONF_GLIBC_VERSION="2.37"
@@ -138,7 +138,7 @@ PTXCONF_KERNEL_IMAGE_Z=y
PTXCONF_KERNEL_IMAGE="zImage"
PTXCONF_KERNEL_DTB=y
PTXCONF_KERNEL_DTS_PATH="${PTXDIST_PLATFORMCONFIG_SUBDIR}/dts:${KERNEL_DIR}/arch/${GENERIC_KERNEL_ARCH}/boot/dts"
-PTXCONF_KERNEL_DTS="ti/omap/am335x-bone.dts ti/omap/am335x-boneblack.dts arm/vexpress-v2p-ca9.dts broadcom/bcm2836-rpi-2-b.dts nxp/imx/imx6q-sabrelite.dts nxp/imx/imx6sx-udoo-neo-full.dts nxp/imx/imx6dl-riotboard.dts nxp/imx/imx6q-nitrogen6x.dts nxp/imx/imx6qp-nitrogen6_max.dts broadcom/bcm2837-rpi-3-b.dts broadcom/bcm2837-rpi-cm3-io3.dts broadcom/bcm2711-rpi-4-b.dts broadcom/bcm2711-rpi-400.dts st/stm32mp157c-dk2.dts st/stm32mp157c-ev1.dts st/stm32mp157c-lxa-mc1.dts microchip/at91-sama5d27_som1_ek.dts at91-sama5d27_giantboard.dts at91-sama5d4_wifx_l1.dts"
+PTXCONF_KERNEL_DTS="ti/omap/am335x-bone.dts ti/omap/am335x-boneblack.dts arm/vexpress-v2p-ca9.dts broadcom/bcm2836-rpi-2-b.dts nxp/imx/imx6q-sabrelite.dts nxp/imx/imx6sx-udoo-neo-full.dts nxp/imx/imx6dl-riotboard.dts nxp/imx/imx6q-nitrogen6x.dts nxp/imx/imx6qp-nitrogen6_max.dts broadcom/bcm2837-rpi-3-b.dts broadcom/bcm2837-rpi-cm3-io3.dts broadcom/bcm2711-rpi-4-b.dts broadcom/bcm2711-rpi-400.dts st/stm32mp157c-dk2.dts st/stm32mp157c-ev1.dts st/stm32mp157c-lxa-mc1.dts st/stm32mp135f-dk.dts microchip/at91-sama5d27_som1_ek.dts at91-sama5d27_giantboard.dts at91-sama5d4_wifx_l1.dts"
# PTXCONF_KERNEL_DTBO is not set
# PTXCONF_KERNEL_CODE_SIGNING is not set
# PTXCONF_KERNEL_ZSTD is not set
@@ -199,11 +199,15 @@ PTXCONF_BAREBOX_ARCH_STRING="arm"
PTXCONF_BOOTLOADER=y
# PTXCONF_GRUB is not set
# PTXCONF_HOST_MXS_UTILS is not set
-# PTXCONF_OPTEE is not set
+PTXCONF_OPTEE=y
+PTXCONF_OPTEE_PLATFORM="stm32mp1"
+PTXCONF_OPTEE_PLATFORM_FLAVOUR="135F_DK"
+PTXCONF_OPTEE_CFG="CFG_TEE_CORE_LOG_LEVEL=2 CFG_WITH_PAGER=n CFG_GP_SOCKETS=n CFG_TA_MBEDTLS_SELF_TEST=n"
+PTXCONF_TF_A_STM32MP13=y
PTXCONF_TF_A=y
-PTXCONF_TF_A_URL="https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/snapshot"
+PTXCONF_TF_A_URL="https://github.com/ARM-software/arm-trusted-firmware/archive/refs/tags"
PTXCONF_TF_A_VERSION="v2.10"
-PTXCONF_TF_A_MD5="641f42080967e05d687ef2fa9f8f3bc3"
+PTXCONF_TF_A_MD5="641f42080967e05d687ef2fa9f8f3bc3 179042745d57dc03cb44063d43dc5301"
PTXCONF_TF_A_ARCH_STRING="aarch32"
PTXCONF_TF_A_ARM_ARCH_MAJOR_7=y
# PTXCONF_TF_A_ARM_ARCH_MAJOR_8_32_BIT is not set
@@ -289,6 +293,7 @@ PTXCONF_IMAGE_RPI2=y
PTXCONF_IMAGE_SABRELITE=y
PTXCONF_IMAGE_SAMA5D27_GIANTBOARD=y
PTXCONF_IMAGE_SAMA5D27_SOM1_EK=y
+PTXCONF_IMAGE_STM32MP135F_DK=y
PTXCONF_IMAGE_STM32MP157C_DK2=y
PTXCONF_IMAGE_STM32MP157C_EV1=y
PTXCONF_IMAGE_UDOO_NEO=y
@@ -349,7 +354,9 @@ PTXCONF_HOST_SYSTEM_PYTHON3_PYPROJECT_HOOKS=y
PTXCONF_HOST_SYSTEM_PYTHON3_TOMLI=y
PTXCONF_HOST_SYSTEM_PYTHON3_WHEEL=y
PTXCONF_HOST_SYSTEM_PYTHON3=y
+PTXCONF_HOST_SYSTEM_PYTHON3_CRYPTOGRAPHY=y
PTXCONF_HOST_SYSTEM_PYTHON3_SETUPTOOLS=y
+PTXCONF_HOST_SYSTEM_PYTHON3_PYELFTOOLS=y
PTXCONF_HOST_UTIL_LINUX=y
PTXCONF_HOST_ZLIB=y
PTXCONF_HOST_TF_A=y
diff --git a/configs/platform-v7a/platforms/image-stm32mp135f-dk.in b/configs/platform-v7a/platforms/image-stm32mp135f-dk.in
new file mode 100644
index 0000000..4b06817
--- /dev/null
+++ b/configs/platform-v7a/platforms/image-stm32mp135f-dk.in
@@ -0,0 +1,13 @@
+## SECTION=image
+
+config IMAGE_STM32MP135F_DK
+ tristate
+ select HOST_GENIMAGE
+ select HOST_TF_A
+ select IMAGE_ROOT_EXT
+ select TF_A_STM32MP13
+ select OPTEE
+ select BAREBOX_STM32MP
+ prompt "Generate images/stm32mp135f-dk.hdimg"
+ help
+ Generate GPT image for the STM32MP135F-DK
diff --git a/configs/platform-v7a/platforms/tf-a-stm32mp13.in b/configs/platform-v7a/platforms/tf-a-stm32mp13.in
new file mode 100644
index 0000000..0dd5804
--- /dev/null
+++ b/configs/platform-v7a/platforms/tf-a-stm32mp13.in
@@ -0,0 +1,12 @@
+## SECTION=bootloader
+
+menuconfig TF_A_STM32MP13
+ select BOOTLOADER
+ select HOST_DTC
+ prompt "ARM Trusted Firmware-A for STM32MP13 with OP-TEE"
+ depends on ARCH_ARM
+ bool
+ help
+ ARM Trusted Firmware-A for STM32MP13 series SoCs with OP-TEE enabled.
+ Currently, these can't be built in the same build as the
+ STM32MP15 with SP_min.
diff --git a/configs/platform-v7a/rules/barebox-stm32mp.make b/configs/platform-v7a/rules/barebox-stm32mp.make
index 5e47725..e39d7c1 100644
--- a/configs/platform-v7a/rules/barebox-stm32mp.make
+++ b/configs/platform-v7a/rules/barebox-stm32mp.make
@@ -50,7 +50,8 @@ BAREBOX_STM32MP_IMAGES := \
BAREBOX_STM32MP_FIP_DTBS := \
stm32mp157c-dk2.dtb \
stm32mp157c-ev1.dtb \
- stm32mp157c-lxa-mc1.dtb
+ stm32mp157c-lxa-mc1.dtb \
+ stm32mp135f-dk.dtb
BAREBOX_STM32MP_IMAGES := $(addprefix $(BAREBOX_STM32MP_BUILD_DIR)/,$(BAREBOX_STM32MP_IMAGES))
BAREBOX_STM32MP_FIP_DTBS := \
diff --git a/configs/platform-v7a/rules/image-stm32mp135f-dk.make b/configs/platform-v7a/rules/image-stm32mp135f-dk.make
new file mode 100644
index 0000000..c7fefb2
--- /dev/null
+++ b/configs/platform-v7a/rules/image-stm32mp135f-dk.make
@@ -0,0 +1,34 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2017 by Sascha Hauer <s.hauer@pengutronix.de>
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+IMAGE_PACKAGES-$(PTXCONF_IMAGE_STM32MP135F_DK) += image-stm32mp135f-dk
+
+IMAGE_STM32MP135F_DK_ENV := STM32MP_BOARD=stm32mp135f-dk
+
+#
+# Paths and names
+#
+IMAGE_STM32MP135F_DK := image-stm32mp135f-dk
+IMAGE_STM32MP135F_DK_DIR := $(BUILDDIR)/$(IMAGE_STM32MP135F_DK)
+IMAGE_STM32MP135F_DK_IMAGE := $(IMAGEDIR)/stm32mp135f-dk.hdimg
+IMAGE_STM32MP135F_DK_FILES := $(IMAGEDIR)/root.tgz
+IMAGE_STM32MP135F_DK_CONFIG := stm32mp-optee.config
+
+# ----------------------------------------------------------------------------
+# Image
+# ----------------------------------------------------------------------------
+
+$(IMAGE_STM32MP135F_DK_IMAGE):
+ @$(call targetinfo)
+ @$(call image/genimage, IMAGE_STM32MP135F_DK)
+ @$(call finish)
+
+# vim: syntax=make
diff --git a/configs/platform-v7a/rules/tf-a-stm32mp13.make b/configs/platform-v7a/rules/tf-a-stm32mp13.make
new file mode 100644
index 0000000..36feb25
--- /dev/null
+++ b/configs/platform-v7a/rules/tf-a-stm32mp13.make
@@ -0,0 +1,110 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2018 by Rouven Czerwinski <r.czerwinski@pengutronix.de>
+# 2019 by Ahmad Fatoum <a.fatoum@pengutronix.de>
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+PACKAGES-$(PTXCONF_TF_A_STM32MP13) += tf-a-stm32mp13
+
+#
+# Paths and names
+#
+TF_A_STM32MP13_VERSION := $(call ptx/config-version, PTXCONF_TF_A)
+TF_A_STM32MP13_MD5 := $(call ptx/config-md5, PTXCONF_TF_A)
+TF_A_STM32MP13 := tf-a-stm32mp13-$(TF_A_STM32MP13_VERSION)
+TF_A_STM32MP13_SUFFIX := tar.gz
+TF_A_STM32MP13_URL := https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/snapshot/$(TF_A_STM32MP13_VERSION).$(TF_A_STM32MP13_SUFFIX)
+TF_A_STM32MP13_SOURCE := $(SRCDIR)/$(TF_A_STM32MP13).$(TF_A_STM32MP13_SUFFIX)
+TF_A_STM32MP13_DIR := $(BUILDDIR)/$(TF_A_STM32MP13)
+TF_A_STM32MP13_BUILDDIR := $(TF_A_STM32MP13_DIR)/build
+TF_A_STM32MP13_BUILD_OOT := YES
+TF_A_STM32MP13_LICENSE := BSD-3-Clause AND BSD-2-Clause \
+ AND (GPL-2.0-or-later OR BSD-2-Clause) \
+ AND (NCSA OR MIT) \
+ AND Zlib \
+ AND (GPL-2.0-or-later OR BSD-3-Clause)
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+TF_A_STM32MP13_PLATFORMS := stm32mp1
+TF_A_STM32MP13_ARTIFACTS := tf-a-*.stm32 fdts/*-fw-config.dtb
+
+TF_A_STM32MP13_WRAPPER_BLACKLIST := \
+ $(PTXDIST_LOWLEVEL_WRAPPER_BLACKLIST)
+
+TF_A_STM32MP13_PATH := PATH=$(CROSS_PATH)
+TF_A_STM32MP13_MAKE_OPT := \
+ -C $(TF_A_STM32MP13_DIR) \
+ CROSS_COMPILE=$(BOOTLOADER_CROSS_COMPILE) \
+ HOSTCC=$(HOSTCC) \
+ ARCH=aarch32 \
+ ARM_ARCH_MAJOR=7 \
+ BUILD_STRING=$(TF_A_STM32MP13_VERSION) \
+ DTB_FILE_NAME='stm32mp135f-dk.dtb' \
+ STM32MP_EMMC=1 STM32MP_SDMMC=1 \
+ STM32MP_RAW_NAND=1 STM32MP_SPI_NAND=1 STM32MP_SPI_NOR=1 \
+ STM32MP_USB_PROGRAMMER=1 \
+ AARCH32_SP=optee \
+ all
+
+TF_A_STM32MP13_CONF_TOOL := NO
+
+# ----------------------------------------------------------------------------
+# Compile
+# ----------------------------------------------------------------------------
+
+TF_A_STM32MP13_MAKE_ENV := $(CROSS_ENV)
+
+$(STATEDIR)/tf-a-stm32mp13.compile:
+ @$(call targetinfo)
+
+ @$(foreach plat, $(TF_A_STM32MP13_PLATFORMS), \
+ $(call compile, TF_A_STM32MP13, \
+ $(TF_A_STM32MP13_MAKE_OPT) PLAT=$(plat))$(ptx/nl))
+
+ @$(call touch)
+
+# ----------------------------------------------------------------------------
+# Install
+# ----------------------------------------------------------------------------
+
+tf-a-stm32mp13/inst_plat = $(foreach artifact, \
+ $(foreach pattern, $(TF_A_STM32MP13_ARTIFACTS), \
+ $(wildcard $(TF_A_STM32MP13_BUILDDIR)/$(1)/$(if $(filter DEBUG=1,TF_A_STM32MP13_MAKE_OPT),debug,release)/$(pattern))), \
+ install -v -D -m 644 $(artifact) \
+ $(2)/$(1)-$(notdir $(artifact))$(ptx/nl))
+
+tf-a-stm32mp13/inst_bins = $(foreach plat, $(TF_A_STM32MP13_PLATFORMS), $(call tf-a-stm32mp13/inst_plat,$(plat),$(1)))
+
+$(STATEDIR)/tf-a-stm32mp13.install:
+ @$(call targetinfo)
+ @$(call tf-a-stm32mp13/inst_bins,$(TF_A_STM32MP13_PKGDIR)/usr/lib/firmware)
+ @$(call touch)
+
+# ----------------------------------------------------------------------------
+# Target-Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/tf-a-stm32mp13.targetinstall:
+ @$(call targetinfo)
+ @$(call tf-a-stm32mp13/inst_bins,$(IMAGEDIR))
+ @$(call touch)
+
+# ----------------------------------------------------------------------------
+# Clean
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/tf-a-stm32mp13.clean:
+ @$(call targetinfo)
+ @rm -vf $(addprefix $(IMAGEDIR)/, $(notdir $(TF_A_STM32MP13_ARTIFACTS_SRC)))
+ @$(call clean_pkg, TF_A_STM32MP13)
+
+# vim: syntax=make