diff options
author | Arnd Bergmann <arnd@arndb.de> | 2022-07-08 09:11:24 +0200 |
---|---|---|
committer | Arnd Bergmann <arnd@arndb.de> | 2022-07-08 09:11:25 +0200 |
commit | 8fcdf10295b40ac42f10a642fae61da066a15390 (patch) | |
tree | 344ea570b9fd7fab881a717039b70bf1cea2f20a /drivers/firmware | |
parent | e0ed9e672565be5db8b2e6d95f047d46140e3297 (diff) | |
parent | acd6510dd7ab3664b69eb99e37c4fd6325a7d442 (diff) | |
download | lwn-8fcdf10295b40ac42f10a642fae61da066a15390.tar.gz lwn-8fcdf10295b40ac42f10a642fae61da066a15390.zip |
Merge tag 'zynqmp-soc-for-v5.20' of https://github.com/Xilinx/linux-xlnx into arm/soc
arm64: ZynqMP SoC changes for v5.20
- Register SGI separately out of EEMI
* tag 'zynqmp-soc-for-v5.20' of https://github.com/Xilinx/linux-xlnx:
firmware: xilinx: Add TF_A_PM_REGISTER_SGI SMC call
Link: https://lore.kernel.org/r/0196d1f3-e9c7-ef51-143d-e98b14980f63@monstr.eu
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'drivers/firmware')
-rw-r--r-- | drivers/firmware/xilinx/zynqmp.c | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/drivers/firmware/xilinx/zynqmp.c b/drivers/firmware/xilinx/zynqmp.c index 7977a494a651..d1f652802181 100644 --- a/drivers/firmware/xilinx/zynqmp.c +++ b/drivers/firmware/xilinx/zynqmp.c @@ -2,7 +2,7 @@ /* * Xilinx Zynq MPSoC Firmware layer * - * Copyright (C) 2014-2021 Xilinx, Inc. + * Copyright (C) 2014-2022 Xilinx, Inc. * * Michal Simek <michal.simek@xilinx.com> * Davorin Mista <davorin.mista@aggios.com> @@ -340,6 +340,20 @@ int zynqmp_pm_invoke_fn(u32 pm_api_id, u32 arg0, u32 arg1, static u32 pm_api_version; static u32 pm_tz_version; +int zynqmp_pm_register_sgi(u32 sgi_num, u32 reset) +{ + int ret; + + ret = zynqmp_pm_invoke_fn(TF_A_PM_REGISTER_SGI, sgi_num, reset, 0, 0, + NULL); + if (!ret) + return ret; + + /* try old implementation as fallback strategy if above fails */ + return zynqmp_pm_invoke_fn(PM_IOCTL, 0, IOCTL_REGISTER_SGI, sgi_num, + reset, NULL); +} + /** * zynqmp_pm_get_api_version() - Get version number of PMU PM firmware * @version: Returned version value |