]> git.ipfire.org Git - thirdparty/u-boot.git/commitdiff
fpga: xilinx: Add option to skip bitstream ID check
authorMichal Simek <michal.simek@amd.com>
Thu, 16 Apr 2026 17:32:02 +0000 (19:32 +0200)
committerMichal Simek <michal.simek@amd.com>
Thu, 23 Apr 2026 09:51:48 +0000 (11:51 +0200)
Add environment variable 'fpga_skip_idcheck' that when set to '1' or
'y' allows bypassing the device ID validation during bitstream loading.
This is useful for loading bitstreams on devices whose ID codes are not
yet recorded in the SOC driver.

Usage: setenv fpga_skip_idcheck 1
  fpga loadb 0 ${loadaddr} ${filesize}

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/d0f11d0a8d48b284683f00d20dfbe323c11f2943.1776360720.git.michal.simek@amd.com
drivers/fpga/xilinx.c

index 25b348648efff9f51d7b0a4009acfa7cbc5d566a..44d7ad6bd543f421c2c2120b8e14aa9120ddd9fc 100644 (file)
@@ -11,6 +11,7 @@
  *  Xilinx FPGA support
  */
 
+#include <env.h>
 #include <fpga.h>
 #include <log.h>
 #include <virtex2.h>
@@ -92,7 +93,11 @@ int fpga_loadbitstream(int devnum, char *fpgadata, size_t size,
                               __func__);
                        printf("%s: Bitstream ID %s, current device ID %d/%s\n",
                               __func__, dataptr, devnum, xdesc->name);
-                       return FPGA_FAIL;
+                       if (!CONFIG_IS_ENABLED(ENV_SUPPORT) ||
+                           env_get_yesno("fpga_skip_idcheck") != 1)
+                               return FPGA_FAIL;
+
+                       printf("%s: Skipping ID check\n", __func__);
                }
        } else {
                printf("%s: Please fill correct device ID to xilinx_desc\n",