summaryrefslogtreecommitdiff
path: root/drivers/fpga
diff options
context:
space:
mode:
authorDalon Westergreen <dalon.westergreen@intel.com>2019-07-16 09:28:10 -0700
committerMarek Vasut <marex@denx.de>2019-07-21 12:47:13 +0200
commita89c2adc3d2834a7c79c1685155a8b8952cf77f4 (patch)
treec25941aeb9460fdd1f51ae5f67b4ad525abdc2a5 /drivers/fpga
parenta8b5031108a22f41234cc3b0c7e4e4e6f6e77cb8 (diff)
fpga: arria10: Fix error in fpga pin configuration
Pin configuration of the FPGA devicetree block should be done after core configuration in the arria10 fpga driver. This fix corrects the check of status, and ensures that the fpga pin mux is configured on correct configuration of the core fpga image. Signed-off-by: Dalon Westergreen <dalon.westergreen@intel.com>
Diffstat (limited to 'drivers/fpga')
-rw-r--r--drivers/fpga/socfpga_arria10.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/fpga/socfpga_arria10.c b/drivers/fpga/socfpga_arria10.c
index 285280e507..5fb9d6a191 100644
--- a/drivers/fpga/socfpga_arria10.c
+++ b/drivers/fpga/socfpga_arria10.c
@@ -936,10 +936,11 @@ int socfpga_load(Altera_desc *desc, const void *rbf_data, size_t rbf_size)
fpgamgr_program_write(rbf_data, rbf_size);
status = fpgamgr_program_finish();
- if (status) {
- config_pins(gd->fdt_blob, "fpga");
- puts("FPGA: Enter user mode.\n");
- }
+ if (status)
+ return status;
+
+ config_pins(gd->fdt_blob, "fpga");
+ puts("FPGA: Enter user mode.\n");
return status;
}