feat(st): introduce new platform STM32MP2

This new STMicroelectronics SoC is based on a dual Cortex-A35.
For the moment, only BL2 is compiled with the common parts for ST
platforms.

Change-Id: I1bc4e6835dba4230359ea9b26d736791e27258aa
Signed-off-by: Yann Gautier <yann.gautier@st.com>
diff --git a/plat/st/stm32mp2/platform.mk b/plat/st/stm32mp2/platform.mk
new file mode 100644
index 0000000..f66612b
--- /dev/null
+++ b/plat/st/stm32mp2/platform.mk
@@ -0,0 +1,43 @@
+#
+# Copyright (c) 2023, STMicroelectronics - All Rights Reserved
+#
+# SPDX-License-Identifier: BSD-3-Clause
+#
+
+include plat/st/common/common.mk
+
+CRASH_REPORTING			:=	1
+ENABLE_PIE			:=	1
+PROGRAMMABLE_RESET_ADDRESS	:=	1
+
+# Default Device tree
+DTB_FILE_NAME			?=	stm32mp257f-ev1.dtb
+
+STM32MP25			:=	1
+
+# STM32 image header version v2.2
+STM32_HEADER_VERSION_MAJOR	:=	2
+STM32_HEADER_VERSION_MINOR	:=	2
+
+# Number of TF-A copies in the device
+STM32_TF_A_COPIES		:=	2
+
+# PLAT_PARTITION_MAX_ENTRIES must take care of STM32_TF-A_COPIES and other partitions
+# such as metadata (2) and fsbl-m (2) to find all the FIP partitions (default is 2).
+PLAT_PARTITION_MAX_ENTRIES	:=	$(shell echo $$(($(STM32_TF_A_COPIES) + 6)))
+
+# STM32MP2x is based on Cortex-A35, which is Armv8.0, and does not support BTI
+# Disable mbranch-protection to avoid adding useless code
+TF_CFLAGS			+=	-mbranch-protection=none
+
+# Include paths and source files
+PLAT_INCLUDES			+=	-Iplat/st/stm32mp2/include/
+
+PLAT_BL_COMMON_SOURCES		+=	lib/cpus/${ARCH}/cortex_a35.S
+
+PLAT_BL_COMMON_SOURCES		+=	plat/st/stm32mp2/${ARCH}/stm32mp2_helper.S
+
+BL2_SOURCES			+=	plat/st/stm32mp2/plat_bl2_mem_params_desc.c
+BL2_SOURCES			+=	plat/st/stm32mp2/bl2_plat_setup.c
+
+include plat/st/common/common_rules.mk