diff options
author | Peng Fan <peng.fan@nxp.com> | 2018-01-10 13:20:23 +0800 |
---|---|---|
committer | Stefano Babic <sbabic@denx.de> | 2018-02-04 12:00:58 +0100 |
commit | de274663f5429fe10c48a40f9fbf0c8aa553905d (patch) | |
tree | c2e85ece1f1b4fd2258432e672995801d094fb7b /arch/arm/mach-imx/sip.c | |
parent | bb0fabe42d67ee39f7a874a0e142bc35ed6226a4 (diff) | |
download | u-boot-de274663f5429fe10c48a40f9fbf0c8aa553905d.tar.gz |
imx: add sip function
Add SiP (Silicon Provider) services function to issue
SMC call to Arm Trusted Firmware.
More SiP information could be found in
https://github.com/ARM-software/arm-trusted-firmware/blob/master/
docs/arm-sip-service.rst
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Diffstat (limited to 'arch/arm/mach-imx/sip.c')
-rw-r--r-- | arch/arm/mach-imx/sip.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/arch/arm/mach-imx/sip.c b/arch/arm/mach-imx/sip.c new file mode 100644 index 0000000000..b724330d35 --- /dev/null +++ b/arch/arm/mach-imx/sip.c @@ -0,0 +1,23 @@ +/* + * Copyright 2017 NXP + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include <common.h> +#include <asm/arch/sys_proto.h> + +unsigned long call_imx_sip(unsigned long id, unsigned long reg0, + unsigned long reg1, unsigned long reg2) +{ + struct pt_regs regs; + + regs.regs[0] = id; + regs.regs[1] = reg0; + regs.regs[2] = reg1; + regs.regs[3] = reg2; + + smc_call(®s); + + return regs.regs[0]; +} |