firmware: xilinx: Dont send linux address to get fpga config get status
[ Upstream commit 5abc174016052caff1bcf4cedb159bd388411e98 ] Fpga get config status just returns status through ret_payload and there is no need to allocate local buf and send its address through SMC args. Moreover, the address that is being passed till now is linux virtual address and is incorrect. Corresponding modification has been done in the firmware to avoid using the address sent by linux. Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.prasad.paladugu@amd.com> Signed-off-by: Nava kishore Manne <nava.kishore.manne@amd.com> Link: https://lore.kernel.org/r/20250207054951.1650534-1-nava.kishore.manne@amd.com Signed-off-by: Michal Simek <michal.simek@amd.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
e1c4bb3774
commit
83ea947238
@@ -1012,17 +1012,13 @@ EXPORT_SYMBOL_GPL(zynqmp_pm_fpga_get_status);
|
||||
int zynqmp_pm_fpga_get_config_status(u32 *value)
|
||||
{
|
||||
u32 ret_payload[PAYLOAD_ARG_CNT];
|
||||
u32 buf, lower_addr, upper_addr;
|
||||
int ret;
|
||||
|
||||
if (!value)
|
||||
return -EINVAL;
|
||||
|
||||
lower_addr = lower_32_bits((u64)&buf);
|
||||
upper_addr = upper_32_bits((u64)&buf);
|
||||
|
||||
ret = zynqmp_pm_invoke_fn(PM_FPGA_READ, ret_payload, 4,
|
||||
XILINX_ZYNQMP_PM_FPGA_CONFIG_STAT_OFFSET, lower_addr, upper_addr,
|
||||
XILINX_ZYNQMP_PM_FPGA_CONFIG_STAT_OFFSET, 0, 0,
|
||||
XILINX_ZYNQMP_PM_FPGA_READ_CONFIG_REG);
|
||||
|
||||
*value = ret_payload[1];
|
||||
|
||||
Reference in New Issue
Block a user