summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2/omap44xx-smc.S
diff options
context:
space:
mode:
authorSantosh Shilimkar <santosh.shilimkar@ti.com>2011-06-06 17:56:49 +0530
committerKevin Hilman <khilman@ti.com>2011-12-08 11:29:00 -0800
commitba9456ac9c72a7a5d4d59340aba4259351832521 (patch)
tree557647722688c75caef4de8d9fdf30665118cd0d /arch/arm/mach-omap2/omap44xx-smc.S
parent3c50729b3fa1cd8ca1f347e6caf1081204cf1a7c (diff)
downloadlinux-ba9456ac9c72a7a5d4d59340aba4259351832521.tar.bz2
ARM: OMAP: Add Secure HAL and monitor mode API infrastructure.
On OMAP secure/emulation devices, certain APIs are exported by secure code. Add an infrastructure so that relevant operations on secure devices can be implemented using it. While at this, rename omap44xx-smc.S to omap-smc.S since the common APIs can be used on other OMAP's too. Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Acked-by: Jean Pihet <j-pihet@ti.com> Reviewed-by: Kevin Hilman <khilman@ti.com> Tested-by: Vishwanath BS <vishwanath.bs@ti.com> Signed-off-by: Kevin Hilman <khilman@ti.com>
Diffstat (limited to 'arch/arm/mach-omap2/omap44xx-smc.S')
-rw-r--r--arch/arm/mach-omap2/omap44xx-smc.S57
1 files changed, 0 insertions, 57 deletions
diff --git a/arch/arm/mach-omap2/omap44xx-smc.S b/arch/arm/mach-omap2/omap44xx-smc.S
deleted file mode 100644
index e69d37d95204..000000000000
--- a/arch/arm/mach-omap2/omap44xx-smc.S
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * OMAP44xx secure APIs file.
- *
- * Copyright (C) 2010 Texas Instruments, Inc.
- * Written by Santosh Shilimkar <santosh.shilimkar@ti.com>
- *
- *
- * 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 <linux/linkage.h>
-
-/*
- * This is common routine to manage secure monitor API
- * used to modify the PL310 secure registers.
- * 'r0' contains the value to be modified and 'r12' contains
- * the monitor API number. It uses few CPU registers
- * internally and hence they need be backed up including
- * link register "lr".
- * Function signature : void omap_smc1(u32 fn, u32 arg)
- */
-
-ENTRY(omap_smc1)
- stmfd sp!, {r2-r12, lr}
- mov r12, r0
- mov r0, r1
- dsb
- smc #0
- ldmfd sp!, {r2-r12, pc}
-ENDPROC(omap_smc1)
-
-ENTRY(omap_modify_auxcoreboot0)
- stmfd sp!, {r1-r12, lr}
- ldr r12, =0x104
- dsb
- smc #0
- ldmfd sp!, {r1-r12, pc}
-ENDPROC(omap_modify_auxcoreboot0)
-
-ENTRY(omap_auxcoreboot_addr)
- stmfd sp!, {r2-r12, lr}
- ldr r12, =0x105
- dsb
- smc #0
- ldmfd sp!, {r2-r12, pc}
-ENDPROC(omap_auxcoreboot_addr)
-
-ENTRY(omap_read_auxcoreboot0)
- stmfd sp!, {r2-r12, lr}
- ldr r12, =0x103
- dsb
- smc #0
- mov r0, r0, lsr #9
- ldmfd sp!, {r2-r12, pc}
-ENDPROC(omap_read_auxcoreboot0)