build/openocd: add set_qe parameter to flash
authorFlorent Kermarrec <florent@enjoy-digital.fr>
Thu, 12 Sep 2019 15:07:56 +0000 (17:07 +0200)
committerFlorent Kermarrec <florent@enjoy-digital.fr>
Thu, 12 Sep 2019 15:07:56 +0000 (17:07 +0200)
QE bit is not set on blank SPI flashes and need to be set when SPI X4 is enabled in the bistream to load the FPGA.

litex/build/openocd.py

index 04b5a7f04a202f0744ede50fa144318a3e28271c..c149ca2ccd78e2baede767a1b1c52dfa0d168849 100644 (file)
@@ -24,11 +24,12 @@ class OpenOCD(GenericProgrammer):
         ])
         subprocess.call(["openocd", "-f", self.config, "-c", script])
 
-    def flash(self, address, data):
+    def flash(self, address, data, set_qe=False):
         flash_proxy = self.find_flash_proxy()
         script = "; ".join([
             "init",
             "jtagspi_init 0 {{{}}}".format(flash_proxy),
+            "jtagspi set_qe 0 1" if set_qe else "",
             "jtagspi_program {{{}}} 0x{:x}".format(data, address),
             "fpga_program",
             "exit"