Commit 498ddaa3 authored by Moritz Fischer's avatar Moritz Fischer Committed by Greg Kroah-Hartman
Browse files

fpga: zynqmp-fpga: Correctly handle error pointer



Fixes the following static checker errors:

drivers/fpga/zynqmp-fpga.c:50 zynqmp_fpga_ops_write()
error: 'eemi_ops' dereferencing possible ERR_PTR()

drivers/fpga/zynqmp-fpga.c:84 zynqmp_fpga_ops_state()
error: 'eemi_ops' dereferencing possible ERR_PTR()

Note: This does not handle the EPROBE_DEFER value in a
      special manner.

Fixes commit c09f7471 ("fpga manager: Adding FPGA Manager support for
Xilinx zynqmp")
Reported-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: default avatarMoritz Fischer <mdf@kernel.org>
Acked-by: default avatarAlan Tull <atull@kernel.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent bd17cc5a
Loading
Loading
Loading
Loading
+2 −2
Original line number Original line Diff line number Diff line
@@ -47,7 +47,7 @@ static int zynqmp_fpga_ops_write(struct fpga_manager *mgr,
	char *kbuf;
	char *kbuf;
	int ret;
	int ret;


	if (!eemi_ops || !eemi_ops->fpga_load)
	if (IS_ERR_OR_NULL(eemi_ops) || !eemi_ops->fpga_load)
		return -ENXIO;
		return -ENXIO;


	priv = mgr->priv;
	priv = mgr->priv;
@@ -81,7 +81,7 @@ static enum fpga_mgr_states zynqmp_fpga_ops_state(struct fpga_manager *mgr)
	const struct zynqmp_eemi_ops *eemi_ops = zynqmp_pm_get_eemi_ops();
	const struct zynqmp_eemi_ops *eemi_ops = zynqmp_pm_get_eemi_ops();
	u32 status;
	u32 status;


	if (!eemi_ops || !eemi_ops->fpga_get_status)
	if (IS_ERR_OR_NULL(eemi_ops) || !eemi_ops->fpga_get_status)
		return FPGA_MGR_STATE_UNKNOWN;
		return FPGA_MGR_STATE_UNKNOWN;


	eemi_ops->fpga_get_status(&status);
	eemi_ops->fpga_get_status(&status);