
On 02. 10. 19 11:34, Luca Ceresoli wrote:
Hi Michal,
On 27/09/19 15:35, Michal Simek wrote:
U-Boot running in EL3 can't use SMC that's why there is a need to talk to PMUFW directly via mailbox. The same logic is applied to all functions which need to talk to PMUFW that's why move this logic to separate function to avoid code duplication.
Also SMC request ID can be composed from PM_SIP_SVC offset that's why ZYNQMP_SIP_SVC_GET_API_VERSION macro can be removed completely.
Signed-off-by: Michal Simek michal.simek@xilinx.com
drivers/firmware/firmware-zynqmp.c | 19 ++++++++++--------- include/zynqmp_firmware.h | 2 -- 2 files changed, 10 insertions(+), 11 deletions(-)
diff --git a/drivers/firmware/firmware-zynqmp.c b/drivers/firmware/firmware-zynqmp.c index d70f34f24388..b7e3039c8337 100644 --- a/drivers/firmware/firmware-zynqmp.c +++ b/drivers/firmware/firmware-zynqmp.c @@ -40,6 +40,14 @@ static int ipi_req(const u32 *req, size_t req_len, u32 *res, size_t res_maxlen) return 0; }
+static int send_req(const u32 *req, size_t req_len, u32 *res, size_t res_maxlen) +{
- if (IS_ENABLED(CONFIG_SPL_BUILD))
return ipi_req(req, req_len, res, 2);
I guess the last parameter should be res_maxlen, not 2.
Other than than, looks good.
good catch. Will fix.
M