[PATCH 1/2] firmware: xilinx: Update the zynqmp_pm_load_pdi() API
Jie Gan
jie.gan at oss.qualcomm.com
Thu Jan 23 22:00:15 PST 2025
On 1/23/2025 6:35 PM, Nava kishore Manne wrote:
> Update the zynqmp_pm_load_pdi() API to handle the firmware
> error’s properly.
>
> Signed-off-by: Nava kishore Manne <nava.kishore.manne at amd.com>
> ---
> drivers/firmware/xilinx/zynqmp.c | 12 ++++++++++--
> 1 file changed, 10 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/firmware/xilinx/zynqmp.c b/drivers/firmware/xilinx/zynqmp.c
> index 720fa8b5d8e9..ea04a6ac402d 100644
> --- a/drivers/firmware/xilinx/zynqmp.c
> +++ b/drivers/firmware/xilinx/zynqmp.c
> @@ -1483,8 +1483,16 @@ EXPORT_SYMBOL_GPL(zynqmp_pm_set_requirement);
> */
> int zynqmp_pm_load_pdi(const u32 src, const u64 address)
> {
> - return zynqmp_pm_invoke_fn(PM_LOAD_PDI, NULL, 3, src, lower_32_bits(address),
> - upper_32_bits(address));
> + u32 ret_payload[PAYLOAD_ARG_CNT];
> + int ret;
> +
> + ret = zynqmp_pm_invoke_fn(PM_LOAD_PDI, ret_payload, 3, src,
> + lower_32_bits(address),
> + upper_32_bits(address));
> + if (ret_payload[0])
> + return ret_payload[0];
Looks a little bit hacking. As the ret_payload is u32, return as int, it
has possibility to overflow?
> +
> + return ret;
> }
> EXPORT_SYMBOL_GPL(zynqmp_pm_load_pdi);
>
Thanks,
Jie
More information about the linux-arm-kernel
mailing list