[U-Boot] [PATCH 12/13] firmware: zynqmp: Separate function for sending message via mailbox

Michal Simek michal.simek at xilinx.com
Wed Oct 2 10:03:27 UTC 2019


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 at 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




More information about the U-Boot mailing list