summaryrefslogtreecommitdiff
path: root/arch/arm64/boot/dts/freescale/imx8qxp.dtsi
diff options
context:
space:
mode:
authorHoria Geantă <horia.geanta@nxp.com>2019-09-29 22:42:19 +0300
committerDong Aisheng <aisheng.dong@nxp.com>2019-11-25 16:08:15 +0800
commit33738b5dcd2873f0cf8c69481079c190f9bda0d5 (patch)
tree09f19b93f6a21b12e3c49a210f089c9fa042976d /arch/arm64/boot/dts/freescale/imx8qxp.dtsi
parent41ff3c14e44fae62998a3edb7006e233c62f5366 (diff)
MLKU-62-1 arm64: dts: imx8qm/imx8qxp: add security subsystem
Security subsystem includes: -caam crypto engine -secure memory Notes: 1. caam has 4 job rings, however only last 2 rings are accessible from the kernel. 2. Controller DT node is added in the same power domain as the JR2 (1st jr showing in DT). This is needed since controller driver (ctrl.c) needs first jr (JR2 in this case) "powered", so it can access its register page (which has some aliases for registers located in controller page, page that is not accesible from the kernel). Adding controller DT node to the power domain leads to SCU f/w being instructed to "power up" JR2. What actually happens is that: -XRDC2 is programmed to provide access to JR2 register page -SECO f/w is instructed to update JR2DID_LS and possibly JR2DID_MS[USE_OUT]. USE_OUT details from Security RM: "JRaDID_MS contains a USE_OUT field that enables a second set of ICID and DID values. When USE_OUT=1, this Job Ring's *data* write transactions will assert TrustZone Non-SecureWorld, along with the OUT_DID and OUT_ICID values from JRSDID_LS. All other bus transactions, including all reads, descriptor write-backs and job completion status writes will assert the PRIM_ICID, PRIM_ICID and not PRIM_TZ values from JRaDID_MS. When USE_OUT=0, all bus transactions performed on behalf of this Job Ring will use the PRIM_ICID, PRIM_ICID and not PRIM_TZ values from JRSDID_MS." Signed-off-by: Horia Geantă <horia.geanta@nxp.com>
Diffstat (limited to 'arch/arm64/boot/dts/freescale/imx8qxp.dtsi')
-rw-r--r--arch/arm64/boot/dts/freescale/imx8qxp.dtsi1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/arm64/boot/dts/freescale/imx8qxp.dtsi b/arch/arm64/boot/dts/freescale/imx8qxp.dtsi
index 32c8e4f011ed..6d1fec787390 100644
--- a/arch/arm64/boot/dts/freescale/imx8qxp.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8qxp.dtsi
@@ -302,6 +302,7 @@
};
/* sorted in register address */
+ #include "imx8-ss-security.dtsi"
#include "imx8-ss-cm40.dtsi"
#include "imx8-ss-vpu.dtsi"
#include "imx8-ss-dc0.dtsi"