diff options
Diffstat (limited to 'arch/arm/mach-keystone/smc.S')
-rw-r--r-- | arch/arm/mach-keystone/smc.S | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/arch/arm/mach-keystone/smc.S b/arch/arm/mach-keystone/smc.S new file mode 100644 index 000000000000..9b9e4f7b241e --- /dev/null +++ b/arch/arm/mach-keystone/smc.S | |||
@@ -0,0 +1,29 @@ | |||
1 | /* | ||
2 | * Keystone Secure APIs | ||
3 | * | ||
4 | * Copyright (C) 2013 Texas Instruments, Inc. | ||
5 | * Santosh Shilimkar <santosh.shilimkar@ti.com> | ||
6 | * | ||
7 | * This program is free software,you can redistribute it and/or modify | ||
8 | * it under the terms of the GNU General Public License version 2 as | ||
9 | * published by the Free Software Foundation. | ||
10 | */ | ||
11 | |||
12 | #include <linux/linkage.h> | ||
13 | |||
14 | /** | ||
15 | * u32 keystone_cpu_smc(u32 command, u32 cpu, u32 addr) | ||
16 | * | ||
17 | * Low level CPU monitor API | ||
18 | * @command: Monitor command. | ||
19 | * @cpu: CPU Number | ||
20 | * @addr: Kernel jump address for boot CPU | ||
21 | * | ||
22 | * Return: Non zero value on failure | ||
23 | */ | ||
24 | ENTRY(keystone_cpu_smc) | ||
25 | stmfd sp!, {r4-r12, lr} | ||
26 | smc #0 | ||
27 | dsb | ||
28 | ldmfd sp!, {r4-r12, pc} | ||
29 | ENDPROC(keystone_cpu_smc) | ||