summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-keystone/smc.S
blob: 9b9e4f7b241ee83660742c7c487f886417ed4bf4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
/*
 * Keystone Secure APIs
 *
 * Copyright (C) 2013 Texas Instruments, Inc.
 * 	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>

/**
 * u32 keystone_cpu_smc(u32 command, u32 cpu, u32 addr)
 *
 * Low level CPU monitor API
 * @command:	Monitor command.
 * @cpu:	CPU Number
 * @addr:	Kernel jump address for boot CPU
 *
 * Return: Non zero value on failure
 */
ENTRY(keystone_cpu_smc)
	stmfd   sp!, {r4-r12, lr}
	smc	#0
	dsb
	ldmfd   sp!, {r4-r12, pc}
ENDPROC(keystone_cpu_smc)