flash-arty: Add cable argument
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>
Fri, 24 Sep 2021 04:23:06 +0000 (14:23 +1000)
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>
Fri, 24 Sep 2021 04:23:06 +0000 (14:23 +1000)
To select the cable config. Defaults to arty

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
openocd/arty.cfg [new file with mode: 0644]
openocd/flash-arty
openocd/xilinx-xc7.cfg
openocd/xilinx-xc7_openocd_v0.11.cfg

diff --git a/openocd/arty.cfg b/openocd/arty.cfg
new file mode 100644 (file)
index 0000000..6cd9939
--- /dev/null
@@ -0,0 +1,6 @@
+interface ftdi
+ftdi_vid_pid 0x0403 0x6010
+ftdi_channel 0
+ftdi_layout_init 0x00e8 0x60eb
+reset_config none
+adapter_khz 25000
index 815dea90b93fc36429b5fb07d04cb3d6da61f8a0..6d4d13d8edb62ccb3b6d467eb49aec747d5318b0 100755 (executable)
@@ -7,7 +7,7 @@ import sys
 
 BASE = os.path.dirname(os.path.abspath(__file__))
 
-def flash(config, flash_proxy, address, data, filetype="", set_qe=False):
+def flash(cable, config, flash_proxy, address, data, filetype="", set_qe=False):
     script = "; ".join([
         "init",
         "jtagspi_init 0 {{{}}}".format(flash_proxy),
@@ -17,7 +17,7 @@ def flash(config, flash_proxy, address, data, filetype="", set_qe=False):
         "exit"
     ])
     print(script)
-    subprocess.call(["openocd", "-f", config, "-c", script])
+    subprocess.call(["openocd", "-f", cable, "-f", config, "-c", script])
 
 def get_version():
     a = subprocess.run(["openocd", "-v"], capture_output=True)
@@ -33,6 +33,7 @@ parser.add_argument("file", help="file to write to flash")
 parser.add_argument("-a", "--address", help="offset in flash", type=lambda x: int(x,0), default=0)
 parser.add_argument("-f", "--fpga", help="a35, a100 or a200", default="a35")
 parser.add_argument("-t", "--filetype", help="file type such as 'bin'", default="")
+parser.add_argument("-c", "--cable", help="cable type such as 'arty'", default="arty")
 args = parser.parse_args()
 
 version = get_version()
@@ -49,5 +50,6 @@ else:
 
 proxy = os.path.join(BASE, proxy)
 config = os.path.join(BASE, "xilinx-xc7{}.cfg".format(version))
+cable = os.path.join(BASE, "{}.cfg".format(args.cable))
 
-flash(config, proxy, args.address, args.file, args.filetype.lower())
+flash(cable, config, proxy, args.address, args.file, args.filetype.lower())
index 5359d4ff31ccfe0ab8b422110e18b559074c2256..50176321b154db409ccf7ef340bff2b16b1144a6 100644 (file)
@@ -1,9 +1,3 @@
-interface ftdi
-ftdi_vid_pid 0x0403 0x6010
-ftdi_channel 0
-ftdi_layout_init 0x00e8 0x60eb
-reset_config none
-adapter_khz 25000
 
 source [find cpld/xilinx-xc7.cfg]
 
index 8f7df34e905de1be5735c645365f04c88876276a..2cece58d88070ebd41ab17031b36b6bf01330ab2 100644 (file)
@@ -1,13 +1,6 @@
 # This file is the same sa xilinx-xc7.cfg, except we use
 # verify_image instead of verify_bank
 
-interface ftdi
-ftdi_vid_pid 0x0403 0x6010
-ftdi_channel 0
-ftdi_layout_init 0x00e8 0x60eb
-reset_config none
-adapter_khz 25000
-
 source [find cpld/xilinx-xc7.cfg]
 
 # From jtagspi.cfg with modification to support