summaryrefslogtreecommitdiff
path: root/arch/arm/mach-omap2/omap-secure.h
diff options
context:
space:
mode:
authorAndrew F. Davis <afd@ti.com>2020-01-03 00:19:42 +0300
committerTony Lindgren <tony@atomide.com>2020-01-13 21:06:34 +0300
commit48840e16c299d886a1fc333375f0564c34cab127 (patch)
tree5771219b5879db63417916ea6a3bd685990b3a3d /arch/arm/mach-omap2/omap-secure.h
parentdbebc8bfe9dcb760b72ec7e2bb9de30a174ff8dc (diff)
downloadlinux-48840e16c299d886a1fc333375f0564c34cab127.tar.xz
ARM: OMAP2+: Use ARM SMC Calling Convention when OP-TEE is available
On High-Security(HS) OMAP2+ class devices a couple actions must be performed from the ARM TrustZone during boot. These traditionally can be performed by calling into the secure ROM code resident in this secure world using legacy SMC calls. Optionally OP-TEE can replace this secure world functionality by replacing the ROM after boot. ARM recommends a standard calling convention is used for this interaction (SMC Calling Convention). We check for the presence of OP-TEE and use this type of call to perform the needed actions, falling back to the legacy OMAP ROM call if OP-TEE is not available. Signed-off-by: Andrew F. Davis <afd@ti.com> Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'arch/arm/mach-omap2/omap-secure.h')
-rw-r--r--arch/arm/mach-omap2/omap-secure.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/omap-secure.h b/arch/arm/mach-omap2/omap-secure.h
index 78a1c4f04bbe..736e594365f4 100644
--- a/arch/arm/mach-omap2/omap-secure.h
+++ b/arch/arm/mach-omap2/omap-secure.h
@@ -62,6 +62,8 @@
extern u32 omap_secure_dispatcher(u32 idx, u32 flag, u32 nargs,
u32 arg1, u32 arg2, u32 arg3, u32 arg4);
+extern void omap_smccc_smc(u32 fn, u32 arg);
+extern void omap_smc1(u32 fn, u32 arg);
extern u32 omap_smc2(u32 id, u32 falg, u32 pargs);
extern u32 omap_smc3(u32 id, u32 process, u32 flag, u32 pargs);
extern phys_addr_t omap_secure_ram_mempool_base(void);