From 20ab79040ed837ecc162948514a21b0e9be2570f Mon Sep 17 00:00:00 2001 From: Javier Viguera Date: Fri, 26 Sep 2025 15:15:59 +0200 Subject: [PATCH] optee-os: add ccimx95-dvk support Add the ccimx95dvk flavor to OP-TEE, define the UART6 base and DDR settings, and update the machine mappings using OPTEEMACHINE as the base recipe does. Signed-off-by: Javier Viguera --- .../0005-core-imx-support-ccimx95-dvk.patch | 51 +++++++++++++++++++ .../optee-imx/optee-os_4.4.0.imx.bbappend | 8 +-- 2 files changed, 56 insertions(+), 3 deletions(-) create mode 100644 meta-digi-arm/dynamic-layers/freescale-layer/recipes-security/optee-imx/optee-os/0005-core-imx-support-ccimx95-dvk.patch diff --git a/meta-digi-arm/dynamic-layers/freescale-layer/recipes-security/optee-imx/optee-os/0005-core-imx-support-ccimx95-dvk.patch b/meta-digi-arm/dynamic-layers/freescale-layer/recipes-security/optee-imx/optee-os/0005-core-imx-support-ccimx95-dvk.patch new file mode 100644 index 000000000..e5162010a --- /dev/null +++ b/meta-digi-arm/dynamic-layers/freescale-layer/recipes-security/optee-imx/optee-os/0005-core-imx-support-ccimx95-dvk.patch @@ -0,0 +1,51 @@ +From: Javier Viguera +Date: Wed, 10 Sep 2025 14:19:01 +0200 +Subject: [PATCH] core: imx: support ccimx95-dvk + +Upstream-Status: Inappropriate [DEY specific] + +Signed-off-by: Javier Viguera +--- + core/arch/arm/plat-imx/conf.mk | 9 +++++++++ + core/arch/arm/plat-imx/registers/imx95.h | 1 + + 2 files changed, 10 insertions(+) + +diff --git a/core/arch/arm/plat-imx/conf.mk b/core/arch/arm/plat-imx/conf.mk +index 916b6b6a1fbb..55f4c21d0321 100644 +--- a/core/arch/arm/plat-imx/conf.mk ++++ b/core/arch/arm/plat-imx/conf.mk +@@ -95,6 +95,7 @@ mx93-flavorlist = \ + mx93evk \ + + mx95-flavorlist = \ ++ ccimx95dvk \ + mx95evk \ + + mx91-flavorlist = \ +@@ -525,6 +526,14 @@ $(call force,CFG_SOC_REV_A0,y) + CFG_IN_TREE_EARLY_TAS += aes_huk/c2fad363-5d9f-4fc4-a417-555841e05745 + endif + ++ifneq (,$(filter $(PLATFORM_FLAVOR),ccimx95dvk)) ++CFG_DDR_SIZE ?= 0x80000000 ++CFG_UART_BASE ?= UART6_BASE ++CFG_NSEC_DDR_1_BASE ?= 0x100000000UL ++CFG_NSEC_DDR_1_SIZE ?= 0x180000000UL ++CFG_CORE_ARM64_PA_BITS ?= 40 ++endif ++ + ifneq (,$(filter $(PLATFORM_FLAVOR),mx95evk)) + CFG_DDR_SIZE ?= 0x80000000 + CFG_UART_BASE ?= UART1_BASE +diff --git a/core/arch/arm/plat-imx/registers/imx95.h b/core/arch/arm/plat-imx/registers/imx95.h +index b0382e682c17..05d8efad2cdc 100644 +--- a/core/arch/arm/plat-imx/registers/imx95.h ++++ b/core/arch/arm/plat-imx/registers/imx95.h +@@ -9,6 +9,7 @@ + #define GICR_BASE 0x48060000 + + #define UART1_BASE 0x44380000 ++#define UART6_BASE 0x425A0000 + + #define MU_BASE 0x47530000 + #define MU_SIZE 0x10000 diff --git a/meta-digi-arm/dynamic-layers/freescale-layer/recipes-security/optee-imx/optee-os_4.4.0.imx.bbappend b/meta-digi-arm/dynamic-layers/freescale-layer/recipes-security/optee-imx/optee-os_4.4.0.imx.bbappend index d2b9e6a8c..49463446c 100644 --- a/meta-digi-arm/dynamic-layers/freescale-layer/recipes-security/optee-imx/optee-os_4.4.0.imx.bbappend +++ b/meta-digi-arm/dynamic-layers/freescale-layer/recipes-security/optee-imx/optee-os_4.4.0.imx.bbappend @@ -8,11 +8,13 @@ SRC_URI:append:dey = " \ file://0002-core-imx-support-ccimx91-dvk.patch \ file://0003-core-imx-support-ccimx93-dvk.patch \ file://0004-core-ccimx93-enable-AES_HUK-trusted-application.patch \ + file://0005-core-imx-support-ccimx95-dvk.patch \ " -PLATFORM_FLAVOR:ccimx8mm = "ccimx8mmdvk" -PLATFORM_FLAVOR:ccimx91 = "ccimx91dvk" -PLATFORM_FLAVOR:ccimx93 = "ccimx93dvk" +OPTEEMACHINE:ccimx8mm = "imx-ccimx8mmdvk" +OPTEEMACHINE:ccimx91 = "imx-ccimx91dvk" +OPTEEMACHINE:ccimx93 = "imx-ccimx93dvk" +OPTEEMACHINE:ccimx95 = "imx-ccimx95dvk" do_compile:append:ccimx93 () { oe_runmake -C ${S} PLATFORM=imx-${PLATFORM_FLAVOR}_a0 O=${B}-A0