On 14/02/24 22:00, Andrew Davis wrote:
Much like we have for ATF, OP-TEE has a standard address that we load
it too and run it from. Add a Kconfig item for this to remove some
hard-coding and allow this address to be more easily changed.

Signed-off-by: Andrew Davis <a...@ti.com>
---
  arch/arm/dts/k3-am625-beagleplay-u-boot.dtsi     | 4 ++--
  arch/arm/dts/k3-am65-iot2050-boot-image.dtsi     | 4 ++--
  arch/arm/dts/k3-binman.dtsi                      | 8 ++++----
  arch/arm/dts/k3-j721e-beagleboneai64-u-boot.dtsi | 4 ++--
  arch/arm/mach-k3/Kconfig                         | 7 +++++++
  5 files changed, 17 insertions(+), 10 deletions(-)

diff --git a/arch/arm/dts/k3-am625-beagleplay-u-boot.dtsi 
b/arch/arm/dts/k3-am625-beagleplay-u-boot.dtsi
index a723caa5805..cca0f44b7d8 100644
--- a/arch/arm/dts/k3-am625-beagleplay-u-boot.dtsi
+++ b/arch/arm/dts/k3-am625-beagleplay-u-boot.dtsi
@@ -105,8 +105,8 @@
                                        arch = "arm64";
                                        compression = "none";
                                        os = "tee";
-                                       load = <0x9e800000>;
-                                       entry = <0x9e800000>;
+                                       load = <CONFIG_K3_OPTEE_LOAD_ADDR>;
+                                       entry = <CONFIG_K3_OPTEE_LOAD_ADDR>;
                                        tee-os {
                                                filename = "tee-raw.bin";
                                        };
diff --git a/arch/arm/dts/k3-am65-iot2050-boot-image.dtsi 
b/arch/arm/dts/k3-am65-iot2050-boot-image.dtsi
index 64318d09cf0..3a6db91e132 100644
--- a/arch/arm/dts/k3-am65-iot2050-boot-image.dtsi
+++ b/arch/arm/dts/k3-am65-iot2050-boot-image.dtsi
@@ -51,8 +51,8 @@
                                        arch = "arm64";
                                        compression = "none";
                                        os = "tee";
-                                       load = <0x9e800000>;
-                                       entry = <0x9e800000>;
+                                       load = <CONFIG_K3_OPTEE_LOAD_ADDR>;
+                                       entry = <CONFIG_K3_OPTEE_LOAD_ADDR>;
                                        tee-os {
                                        };
                                };
diff --git a/arch/arm/dts/k3-binman.dtsi b/arch/arm/dts/k3-binman.dtsi
index 758c8bf6ea1..621653e9471 100644
--- a/arch/arm/dts/k3-binman.dtsi
+++ b/arch/arm/dts/k3-binman.dtsi
@@ -286,8 +286,8 @@
                                        arch = "arm64";
                                        compression = "none";
                                        os = "tee";
-                                       load = <0x9e800000>;
-                                       entry = <0x9e800000>;
+                                       load = <CONFIG_K3_OPTEE_LOAD_ADDR>;
+                                       entry = <CONFIG_K3_OPTEE_LOAD_ADDR>;
                                        ti-secure {
                                                content = <&tee>;
                                                keyfile = "custMpk.pem";
@@ -356,8 +356,8 @@
                                        arch = "arm64";
                                        compression = "none";
                                        os = "tee";
-                                       load = <0x9e800000>;
-                                       entry = <0x9e800000>;
+                                       load = <CONFIG_K3_OPTEE_LOAD_ADDR>;
+                                       entry = <CONFIG_K3_OPTEE_LOAD_ADDR>;
                                        tee-os {
                                                filename = "tee-raw.bin";
                                        };
diff --git a/arch/arm/dts/k3-j721e-beagleboneai64-u-boot.dtsi 
b/arch/arm/dts/k3-j721e-beagleboneai64-u-boot.dtsi
index 017a5a722e0..ca99fa0e690 100644
--- a/arch/arm/dts/k3-j721e-beagleboneai64-u-boot.dtsi
+++ b/arch/arm/dts/k3-j721e-beagleboneai64-u-boot.dtsi
@@ -250,8 +250,8 @@
                                        arch = "arm64";
                                        compression = "none";
                                        os = "tee";
-                                       load = <0x9e800000>;
-                                       entry = <0x9e800000>;
+                                       load = <CONFIG_K3_OPTEE_LOAD_ADDR>;
+                                       entry = <CONFIG_K3_OPTEE_LOAD_ADDR>;
                                        tee-os {
                                                filename = "tee-raw.bin";
                                        };
diff --git a/arch/arm/mach-k3/Kconfig b/arch/arm/mach-k3/Kconfig
index 0bd3f9fa12d..55bb874d9aa 100644
--- a/arch/arm/mach-k3/Kconfig
+++ b/arch/arm/mach-k3/Kconfig
@@ -129,6 +129,13 @@ config K3_ATF_LOAD_ADDR
          The load address for the ATF image. This value is used to build the
          FIT image header that places ATF in memory where it will run.
+config K3_OPTEE_LOAD_ADDR
+       hex "Load address of OPTEE image"
+       default 0x9e800000
+       help
+         The load address for the OPTEE image. This value defaults to 
0x9e800000
+         if not provided in the board defconfig file.
+
  config K3_DM_FW
        bool "Separate DM firmware image"
        depends on CPU_V7R && (SOC_K3_J721E || SOC_K3_J721S2 || SOC_K3_AM625 || SOC_K3_AM62A7) 
&& !CLK_TI_SCI && !TI_SCI_POWER_DOMAIN

Reviewed-by: Neha Malcom Francis <n-fran...@ti.com>

--
Thanking You
Neha Malcom Francis

Reply via email to