2019-06-04 16:11:33 +08:00
|
|
|
/* SPDX-License-Identifier: GPL-2.0-only */
|
2013-06-22 06:54:47 +08:00
|
|
|
/*
|
|
|
|
* Keystone Secure APIs
|
|
|
|
*
|
|
|
|
* Copyright (C) 2013 Texas Instruments, Inc.
|
|
|
|
* Santosh Shilimkar <santosh.shilimkar@ti.com>
|
|
|
|
*/
|
|
|
|
|
|
|
|
#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
|
|
|
|
*/
|
2019-05-28 06:40:50 +08:00
|
|
|
.arch_extension sec
|
2013-06-22 06:54:47 +08:00
|
|
|
ENTRY(keystone_cpu_smc)
|
2013-07-14 22:38:52 +08:00
|
|
|
stmfd sp!, {r4-r11, lr}
|
2013-06-22 06:54:47 +08:00
|
|
|
smc #0
|
2013-07-14 22:38:52 +08:00
|
|
|
ldmfd sp!, {r4-r11, pc}
|
2013-06-22 06:54:47 +08:00
|
|
|
ENDPROC(keystone_cpu_smc)
|