MLK-16750-7 arm: dts: add dedicated dts for OP-TEE
authorPeng Fan <peng.fan@nxp.com>
Fri, 10 Nov 2017 05:59:49 +0000 (13:59 +0800)
committerNitin Garg <nitin.garg@nxp.com>
Mon, 19 Mar 2018 20:55:41 +0000 (15:55 -0500)
Add dedicated dts for OP-TEE.
The modification is about ocram partition. The default dtsi
use lower ocram area for low power things. But i.MX
chips TZASC could only protect OCRAM from high address to low address.
So modify the OCRAM space for OP-TEE.

The PSCI/OPTEE firmware node will be dynamically created in OP-TEE.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
13 files changed:
arch/arm/boot/dts/Makefile
arch/arm/boot/dts/imx6dl-sabreauto-optee.dts [new file with mode: 0644]
arch/arm/boot/dts/imx6dl-sabresd-optee.dts [new file with mode: 0644]
arch/arm/boot/dts/imx6q-sabreauto-optee.dts [new file with mode: 0644]
arch/arm/boot/dts/imx6q-sabresd-optee.dts [new file with mode: 0644]
arch/arm/boot/dts/imx6qp-sabreauto-optee.dts [new file with mode: 0644]
arch/arm/boot/dts/imx6qp-sabresd-optee.dts [new file with mode: 0644]
arch/arm/boot/dts/imx6sx-sabreauto-optee.dts [new file with mode: 0644]
arch/arm/boot/dts/imx6sx-sdb-optee.dts [new file with mode: 0644]
arch/arm/boot/dts/imx6ul-14x14-evk-optee.dts [new file with mode: 0644]
arch/arm/boot/dts/imx6ul-9x9-evk-optee.dts [new file with mode: 0644]
arch/arm/boot/dts/imx6ull-14x14-evk-optee.dts [new file with mode: 0644]
arch/arm/boot/dts/imx7d-sdb-optee.dts [new file with mode: 0644]

index 5f9cf31..e74ddea 100644 (file)
@@ -350,11 +350,13 @@ dtb-$(CONFIG_SOC_IMX6Q) += \
        imx6dl-sabreauto-enetirq.dtb \
        imx6dl-sabreauto-flexcan1.dtb \
        imx6dl-sabreauto-gpmi-weim.dtb \
+       imx6dl-sabreauto-optee.dtb \
        imx6dl-sabrelite.dtb \
        imx6dl-sabresd.dtb \
        imx6dl-sabresd-btwifi.dtb \
        imx6dl-sabresd-hdcp.dtb \
        imx6dl-sabresd-ldo.dtb \
+       imx6dl-sabresd-optee.dtb \
        imx6dl-ts4900.dtb \
        imx6dl-tx6dl-comtft.dtb \
        imx6dl-tx6s-8034.dtb \
@@ -415,12 +417,14 @@ dtb-$(CONFIG_SOC_IMX6Q) += \
        imx6q-sabreauto-enetirq.dtb \
        imx6q-sabreauto-flexcan1.dtb \
        imx6q-sabreauto-gpmi-weim.dtb \
+       imx6q-sabreauto-optee.dtb \
        imx6q-sabrelite.dtb \
        imx6q-sabresd.dtb \
        imx6q-sabresd-btwifi.dtb \
        imx6q-sabresd-hdcp.dtb \
        imx6q-sabresd-ldo.dtb \
        imx6q-sabresd-enetirq.dtb \
+       imx6q-sabresd-optee.dtb \
        imx6q-sbc6x.dtb \
        imx6q-tbs2910.dtb \
        imx6q-ts4900.dtb \
@@ -440,10 +444,12 @@ dtb-$(CONFIG_SOC_IMX6Q) += \
        imx6qp-sabreauto-ecspi.dtb \
        imx6qp-sabreauto-flexcan1.dtb \
        imx6qp-sabreauto-gpmi-weim.dtb \
+       imx6qp-sabreauto-optee.dtb \
        imx6qp-sabresd-btwifi.dtb \
        imx6qp-sabresd-hdcp.dtb \
        imx6qp-sabresd-ldo.dtb \
        imx6qp-sabresd-ldo-pcie-cert.dtb \
+       imx6qp-sabresd-optee.dtb \
        imx6qp-sabresd.dtb
 dtb-$(CONFIG_SOC_IMX6SL) += \
        imx6sl-evk.dtb \
@@ -457,6 +463,7 @@ dtb-$(CONFIG_SOC_IMX6SX) += \
        imx6sx-14x14-arm2.dtb \
        imx6sx-sabreauto.dtb \
        imx6sx-sabreauto-m4.dtb \
+       imx6sx-sabreauto-optee.dtb \
        imx6sx-sdb-reva.dtb \
        imx6sx-sdb-sai.dtb \
        imx6sx-sdb-reva-ldo.dtb \
@@ -468,6 +475,7 @@ dtb-$(CONFIG_SOC_IMX6SX) += \
        imx6sx-sdb-m4.dtb \
        imx6sx-sdb-mqs.dtb \
        imx6sx-sdb-sai.dtb \
+       imx6sx-sdb-optee.dtb \
        imx6sx-19x19-arm2.dtb \
        imx6sx-19x19-arm2-ldo.dtb \
        imx6sx-19x19-arm2-csi.dtb \
@@ -488,6 +496,7 @@ dtb-$(CONFIG_SOC_IMX6UL) += \
        imx6ul-14x14-evk-emmc.dtb \
        imx6ul-14x14-evk-gpmi-weim.dtb \
        imx6ul-14x14-evk-usb-certi.dtb \
+       imx6ul-14x14-evk-optee.dtb \
        imx6ul-geam-kit.dtb \
        imx6ul-pico-hobbit.dtb \
        imx6ul-tx6ul-0010.dtb \
@@ -506,6 +515,7 @@ dtb-$(CONFIG_SOC_IMX6UL) += \
        imx6ul-9x9-evk-btwifi.dtb \
        imx6ul-9x9-evk-btwifi-oob.dtb \
        imx6ul-9x9-evk-csi.dtb \
+       imx6ul-9x9-evk-optee.dtb \
        imx6ul-9x9-evk-ldo.dtb
 dtb-$(CONFIG_SOC_IMX6ULL) += \
        imx6ull-14x14-ddr3-arm2.dtb \
@@ -530,6 +540,7 @@ dtb-$(CONFIG_SOC_IMX6ULL) += \
        imx6ull-14x14-evk-emmc.dtb \
        imx6ull-14x14-evk-gpmi-weim.dtb \
        imx6ull-14x14-evk-usb-certi.dtb \
+       imx6ull-14x14-evk-optee.dtb \
        imx6ull-9x9-evk.dtb \
        imx6ull-9x9-evk-btwifi.dtb \
        imx6ull-9x9-evk-btwifi-oob.dtb \
@@ -568,6 +579,7 @@ dtb-$(CONFIG_SOC_IMX7D) += \
        imx7d-sdb-m4.dtb \
        imx7d-sdb-qspi.dtb \
        imx7d-sdb-mipi-dsi.dtb \
+       imx7d-sdb-optee.dtb \
        imx7d-sdb-reva.dtb \
        imx7d-sdb-reva-epdc.dtb \
        imx7d-sdb-reva-gpmi-weim.dtb \
diff --git a/arch/arm/boot/dts/imx6dl-sabreauto-optee.dts b/arch/arm/boot/dts/imx6dl-sabreauto-optee.dts
new file mode 100644 (file)
index 0000000..2362784
--- /dev/null
@@ -0,0 +1,13 @@
+/*
+ * Copyright 2017 NXP
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+#include "imx6dl-sabreauto.dts"
+
+&ocram {
+       reg = <0x00905000 0x13000>;
+};
diff --git a/arch/arm/boot/dts/imx6dl-sabresd-optee.dts b/arch/arm/boot/dts/imx6dl-sabresd-optee.dts
new file mode 100644 (file)
index 0000000..7b5af9a
--- /dev/null
@@ -0,0 +1,13 @@
+/*
+ * Copyright 2017 NXP
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+#include "imx6dl-sabresd.dts"
+
+&ocram {
+       reg = <0x00905000 0x13000>;
+};
diff --git a/arch/arm/boot/dts/imx6q-sabreauto-optee.dts b/arch/arm/boot/dts/imx6q-sabreauto-optee.dts
new file mode 100644 (file)
index 0000000..6b684bd
--- /dev/null
@@ -0,0 +1,14 @@
+/*
+ * Copyright 2017 NXP
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+#include "imx6q-sabreauto.dts"
+
+&ocram {
+       /* Reserve the high 32K for OP-TEE */
+       reg = <0x00905000 0x33000>;
+};
diff --git a/arch/arm/boot/dts/imx6q-sabresd-optee.dts b/arch/arm/boot/dts/imx6q-sabresd-optee.dts
new file mode 100644 (file)
index 0000000..1fa1094
--- /dev/null
@@ -0,0 +1,14 @@
+/*
+ * Copyright 2017 NXP
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+#include "imx6q-sabresd.dts"
+
+&ocram {
+       /* Reserve the high 32K for OP-TEE */
+       reg = <0x00905000 0x33000>;
+};
diff --git a/arch/arm/boot/dts/imx6qp-sabreauto-optee.dts b/arch/arm/boot/dts/imx6qp-sabreauto-optee.dts
new file mode 100644 (file)
index 0000000..1d9cdcd
--- /dev/null
@@ -0,0 +1,14 @@
+/*
+ * Copyright 2017 NXP
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+#include "imx6qp-sabreauto.dts"
+
+/* TODO: This needs to be changed to use OCRAM3 */
+&ocram {
+       reg = <0x00905000 0x33000>;
+};
diff --git a/arch/arm/boot/dts/imx6qp-sabresd-optee.dts b/arch/arm/boot/dts/imx6qp-sabresd-optee.dts
new file mode 100644 (file)
index 0000000..8a036e9
--- /dev/null
@@ -0,0 +1,14 @@
+/*
+ * Copyright 2017 NXP
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+#include "imx6qp-sabresd.dts"
+
+/* TODO: This needs to be changed to use OCRAM3 */
+&ocram {
+       reg = <0x00905000 0x33000>;
+};
diff --git a/arch/arm/boot/dts/imx6sx-sabreauto-optee.dts b/arch/arm/boot/dts/imx6sx-sabreauto-optee.dts
new file mode 100644 (file)
index 0000000..a84a09e
--- /dev/null
@@ -0,0 +1,23 @@
+/*
+ * Copyright 2017 NXP
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+#include "imx6sx-sabreauto.dts"
+
+&ocram {
+       reg = <0x00905000 0x1b000>;
+};
+
+&ocrams_ddr {
+       reg = <0x00904000 0x1000>;
+};
+
+&ocrams {
+       /* 0x8f8000 are used by optee */
+       reg = <0x00900000 0x4000>;
+       clocks = <&clks IMX6SX_CLK_OCRAM>;
+};
diff --git a/arch/arm/boot/dts/imx6sx-sdb-optee.dts b/arch/arm/boot/dts/imx6sx-sdb-optee.dts
new file mode 100644 (file)
index 0000000..8c247cf
--- /dev/null
@@ -0,0 +1,23 @@
+/*
+ * Copyright 2017 NXP
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+#include "imx6sx-sdb.dts"
+
+&ocram {
+       reg = <0x00905000 0x1b000>;
+};
+
+&ocrams_ddr {
+       reg = <0x00904000 0x1000>;
+};
+
+&ocrams {
+       /* 0x8f8000 are used by optee */
+       reg = <0x00900000 0x4000>;
+       clocks = <&clks IMX6SX_CLK_OCRAM>;
+};
diff --git a/arch/arm/boot/dts/imx6ul-14x14-evk-optee.dts b/arch/arm/boot/dts/imx6ul-14x14-evk-optee.dts
new file mode 100644 (file)
index 0000000..a764769
--- /dev/null
@@ -0,0 +1,14 @@
+
+/*
+ * Copyright 2017 NXP
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+#include "imx6ul-14x14-evk.dts"
+
+&ocram {
+       reg = <0x00905000 0x13000>;
+};
diff --git a/arch/arm/boot/dts/imx6ul-9x9-evk-optee.dts b/arch/arm/boot/dts/imx6ul-9x9-evk-optee.dts
new file mode 100644 (file)
index 0000000..cfde6b1
--- /dev/null
@@ -0,0 +1,13 @@
+/*
+ * Copyright 2017 NXP
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+#include "imx6ul-9x9-evk.dts"
+
+&ocram {
+       reg = <0x00905000 0x13000>;
+};
diff --git a/arch/arm/boot/dts/imx6ull-14x14-evk-optee.dts b/arch/arm/boot/dts/imx6ull-14x14-evk-optee.dts
new file mode 100644 (file)
index 0000000..4027c54
--- /dev/null
@@ -0,0 +1,13 @@
+/*
+ * Copyright 2017 NXP
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+#include "imx6ull-14x14-evk.dts"
+
+&ocram {
+       reg = <0x00905000 0x13000>;
+};
diff --git a/arch/arm/boot/dts/imx7d-sdb-optee.dts b/arch/arm/boot/dts/imx7d-sdb-optee.dts
new file mode 100644 (file)
index 0000000..9302a2c
--- /dev/null
@@ -0,0 +1,22 @@
+/*
+ * Copyright 2017 NXP
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+#include "imx7d-sdb.dts"
+
+&ocram {
+       reg = <0x00905000 0x1b000>;
+};
+
+&ocrams_ddr {
+       reg = <0x00904000 0x1000>;
+};
+
+&ocrams {
+       /* 0x180000 are used by optee */
+       reg = <0x00900000 0x4000>;
+       clocks = <&clks IMX7D_OCRAM_CLK>;
+};