Commit Graph

868 Commits

Author SHA1 Message Date
Zhongyi Chen c0ad3225cc Add support for Xilinx xczu17eg. It's tested on xczu17eg board with Digilent HS3 at 30Mbps. 2023-09-22 19:33:01 -07:00
Alexey Starikovskiy c82a8e6207 Make CH347 driver faster
Speed up toggleClk

Defer write-only USB transactions to better utilize bus
2023-09-22 07:08:48 +02:00
Alexey Starikovskiy 67159e8297 Move JTAG chain bit init to device_select() 2023-09-22 07:05:20 +02:00
Alexey Starikovskiy 4c39abf51c Add missing pieces to JTAG 2023-09-22 07:01:48 +02:00
Alexey Starikovskiy 85f9791600 drop div_by_5 to allow 2.5MHz clock 2023-09-22 06:55:21 +02:00
Alexey Starikovskiy 01ac90a172 [xilinx] add jtag->flush before sleep 2023-09-21 07:38:25 +02:00
Alexey Starikovskiy b10be9ae8a properly fill dummy arrays 2023-09-21 07:36:41 +02:00
Alexey Starikovskiy d3410e0e30 Update JTAG chain detect 2023-09-21 07:33:54 +02:00
Gwenhael Goavec-Merou afbf0c4ff8 board: adding @lambdaconcept ecpix5_r03 (ft4232) 2023-09-21 06:24:30 +02:00
Alexey Starikovskiy 6c16417ee9 Merge UPDATE_DR and UPDATE_IR handling in JTAG state machines 2023-09-20 07:59:34 +02:00
Alexey Starikovskiy 6a0de15bff Parse LoadingRate field 2023-09-20 07:58:06 +02:00
Alexey Starikovskiy 0c89ac9a44 Add GD32VF103 to misc devices 2023-09-20 07:48:21 +02:00
Gwenhael Goavec-Merou 94b62460c5 jtag: shiftDR: (fix daisy chain) when more than one FPGA, a sequence of '0' before and/or after must be sent instead of '1' (fix #189 and #133 2023-09-17 08:59:26 +02:00
Gwenhael Goavec-Merou 9810735e32 jtag: rework detectChain: try unmasked idcode first 2023-09-14 21:53:27 +02:00
Gwenhael Goavec-Merou 57fc9bcb6f part: machXO3: re-add partially revision 2023-09-14 21:52:53 +02:00
Rodrigo Rengifo 5e9cc7c440 pass along reset paramaters to provide control to the caller
Upsteam-Status: Submitted [https://github.com/traucucayre/openFPGALoader]
  - Submitted to upstream, waiting approval
2023-09-10 20:46:08 -07:00
Gwenhael Goavec-Merou c417ce6746 lattice: spi_put: avoid loop when tx == NULL 2023-09-06 15:50:28 +02:00
Gwenhael Goavec-Merou 61b59ce827 jtag: fix state machine (issue introduce by commit 9e91c3) 2023-09-06 15:47:32 +02:00
Alexey Starikovskiy 9e91c31e31 Fixes for PVS errors 2023-09-01 22:30:24 +03:00
Alexey Starikovskiy 0f3afbcaea Make IDCODE unsigned 2023-08-29 20:01:21 +03:00
Alexey Starikovskiy 8976404b78 Use JTAG state 2023-08-29 20:00:28 +03:00
Alexey Starikovskiy 1908ccd83b make output buffer const 2023-08-29 19:51:41 +03:00
Icenowy Zheng 0de2ea6b39 gowin: add preliminary support for GW5AST-138
Arora V series is a new series of Gowin FPGA, in which the flashing
process has changed.

Add preliminary support by adding FS file line count and deal with the
SRAM writing process. Flash writing is not yet done.

Signed-off-by: Icenowy Zheng <uwu@icenowy.me>
2023-08-12 12:36:06 +08:00
Icenowy Zheng 6a4e107e42 part: add known ID codes for GW5 series
Codes are from Gowin UG704.

Signed-off-by: Icenowy Zheng <uwu@icenowy.me>
2023-08-09 22:11:41 +08:00
Shareef Jalloq 9d22d62a54 part/board: adding Avnet Mini-ITX
Adding the Avnet Mini-ITX dev board that uses the XC7Z100 Zynq-7000
device.
2023-08-07 17:06:02 +01:00
Gwenhael Goavec-Merou e3c8d6be1d board: added QMTECH cyclone10 LP starter kit (10CL016YU484C8G) 2023-08-05 11:49:53 +02:00
Gwenhael Goavec-Merou 7424ea2af9 part: update altera/intel idcode (same idcode for III/IV/10 LP) 2023-08-05 06:47:51 +02:00
Florent Kermarrec baff0cad1e src/part: Fix Xilinx XC2 ident. 2023-08-03 16:12:51 +02:00
Florent Kermarrec 502f38fb00 src/part.hpp: Add Kintex Ultrascale+ KU3P ID-Code. 2023-08-03 16:07:55 +02:00
Florent Kermarrec 4042646434 src/part.hpp: Add separator for each vendor. 2023-08-03 16:07:43 +02:00
Florent Kermarrec c3e0707f6b src/part.hpp: Reorder families (older first, smaller first) and minor alignment cleanups. 2023-08-03 16:07:33 +02:00
Florent Kermarrec a1dea79230 src/part.hpp: Add separator for each chip family. 2023-08-03 16:07:24 +02:00
Gwenhael Goavec-Merou 4c5f6f361b svf_jtag: fix -Wmismatched-new-delete delete -> delete[] 2023-08-03 07:53:59 +02:00
Gwenhael Goavec-Merou 6ef87c5466 ftdipp_mpsse: fix format-zero-length snprintf -> memset 2023-08-03 07:43:56 +02:00
Gwenhael Goavec-Merou 0e1e07262c ftdispi: add missing status_pin 2023-08-03 07:42:06 +02:00
Gwenhael Goavec-Merou 2f8056cba5 usbBlaster: cleanup 2023-07-30 08:54:13 +02:00
Gwenhael Goavec-Merou 75d98d12e9 jtag: merge init_internal to CTOR, pass verbose to jtag drivers 2023-07-30 08:45:57 +02:00
Gwenhael Goavec-Merou 4bf4b94bbb cables: verbose type coherency 2023-07-30 08:39:15 +02:00
Gwenhael Goavec-Merou 469e1c3669 efinix: remove verbose comparison 2023-07-30 07:28:29 +02:00
Gwenhael Goavec-Merou 76f84c1190 ftdipp_mpsse: _verbose int8_t -> bool 2023-07-30 07:23:19 +02:00
Gwenhael Goavec-Merou c41ef7539c ftdispi: convert verbose bool -> int8_t 2023-07-30 07:19:17 +02:00
Gwenhael Goavec-Merou baeb9d52ec
Merge pull request #358 from inkdot7/decimal_busdev
Parse USB bus:dev as decimal integers, to be consistent with `--scan-usb`.
2023-07-29 18:10:48 +02:00
Haakan T Johansson bed17f3be8 Parse USB bus:dev as decimal integers, to be consistent with --scan-usb.
Do not accept auto-detected base 0 (e.g. prefix '0x' for hex), since '0'
prefix gives an octal interpretation, and the user is likely to copy
values from `--scan-usb` or `lsusb` that could then be misinterpreted,
e.g. 005:010.
2023-07-29 09:49:52 +02:00
Haakan T Johansson 4f7a4c33aa Tell USB bus and address when ftdi open fails, when bus and addr both non-zero. 2023-07-29 08:52:16 +02:00
Gwenhael Goavec-Merou 3955a70843 jtag: fix warning (uninitialized tms) 2023-07-27 07:39:20 +02:00
Gwenhael Goavec-Merou ab9eff7412 jlink: fix warning (uninitialized length) 2023-07-27 07:35:14 +02:00
Gwenhael Goavec-Merou 1dba0572ff lattice: fix warning (uninitialized rx_buf) 2023-07-27 07:18:59 +02:00
Gwenhael Goavec-Merou a1e9d3f7db main: (SPI mode) sanity check: print error and quit when manufacturer is unknown 2023-07-27 07:15:49 +02:00
Gwenhael Goavec-Merou a89fc54f29 cable: ch347: fix for CI (libusb_strerror with a cast in -> libusb_error, fix libusb callback signature) 2023-07-26 08:37:39 +02:00
Alexey Starikovskiy 0fc8ba10a8 Add WCH CH347T(mode #3) JTAG cable
Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
2023-07-26 08:17:57 +02:00
Gwenhael Goavec-Merou 8ffa024a95 spiFlash: temporary disable read extended (#345) 2023-07-24 14:45:13 +02:00
Stéphane Chevigny 91f2900f0c add support for colorlight-i9+ board + spiOverJtag/spiOverJtag_xc7a50tfgg484.bit.gz 2023-06-30 11:36:32 +02:00
Gwenhael Goavec-Merou 3e25a33346 boards: added support for 14bits 125MHz redpitaya board (7010) 2023-06-29 16:59:42 +02:00
Gwenhael Goavec-Merou 1f5d6cb373 xilinx: rework error message for zynqXX in SPI_MODE 2023-06-01 20:33:27 +02:00
Andrew Dennison 87b17ed9bf efinix: support using JTAG interfaces 2023-06-01 11:05:26 +10:00
Andrew Dennison ec82dd6467 jlink: support J-Link BASE and J-Trace PRO 2023-05-29 11:57:47 +10:00
Andrew Dennison 23d65823aa jlink: report skipped devices with verbose 2023-05-29 11:57:47 +10:00
Andrew Dennison bddfe97997 jlink: suport writeTDI() with tx=NULL
fixes crash and is consistent with other jtag cables
2023-05-29 11:57:47 +10:00
Gwenhael Goavec-Merou d2f7040527 main: parse_opt: busdev-num: explicitly set hex base 2023-05-28 17:14:48 +02:00
wonderfullook 9331bf7a6b
add sipeed tang nano 20k 2023-05-25 19:24:48 +08:00
William D. Jones 5e98333a8d Fix off-by-one errors in calculating UFM start page. 2023-05-05 02:00:35 -04:00
Gwenhael Goavec-Merou d8bc361e7f lattice: UFM printf -> printInfo 2023-05-01 21:11:22 +02:00
Gwenhael Goavec-Merou caafc8edc3 lattice: bypass refresh instruction for machXO2 2023-05-01 21:07:32 +02:00
Gwenhael Goavec-Merou a0fdccc2a4 lattice: fix cast int vs uint8_t 2023-05-01 01:05:36 +02:00
William D. Jones 0db174ed7e
Add support for flashing UFM on MachXO2 using JEDEC file. (#339)
* Add support for flashing UFM on MachXO2 using JEDEC file.

* Use a better guard value for getUFMStartPageFromJEDEC.

* Fix if-else style in  getUFMStartPageFromJEDEC.
2023-05-01 00:50:16 +02:00
Gwenhael Goavec-Merou 873de96a3b spiOverJtag: added efinix Titanium Ti60 support 2023-04-27 16:41:58 +02:00
Gwenhael Goavec-Merou 07a0708eb8 efinix:
- jtag mode: added spiOverJtag support;
- spiOverJtag: added efinix support: verilog file and t8f81 bitstream
- xyloni: part code for spiOverJtag flash access/load bridge
2023-04-27 16:41:17 +02:00
Balint Cristian 933ed793e8 Add libgpiod v2 api support
Signed-off-by: Balint Cristian <cristian.balint@gmail.com>
2023-04-19 23:27:09 +03:00
Gwenhael Goavec-Merou cd8a143164 DATA_DIR override with environment variable (#333) 2023-04-17 20:55:10 +02:00
Viktor P 4100675a6b Allow VID:PID override for JLink probe 2023-04-17 19:15:04 +03:00
Gwenhael Goavec-Merou 0a9e8a7e4b src/xx: cppcheck 2023-04-15 08:20:05 +02:00
chenzhuoyu cf04d64377 feat: option to use an extra GPIO as the status indicator 2023-04-11 00:36:16 +08:00
nulltek 9aa0e72afb
Add Support for Xilinx Artix-7 a25t (xc7a25t) 2023-04-07 17:33:16 +12:00
Gwenhael Goavec-Merou a43f94fcf5 spiFlashdb: Windbond w25q80bv 2023-04-03 23:26:03 +02:00
Gwenhael Goavec-Merou ccdcc49cb0 gowin: fix typo 2023-03-17 19:42:23 +01:00
Gwenhael Goavec-Merou 6161e550c1 main: deduplicate messages about board's default cable/user's selection, display warn always instead of when verbose mode is set. 2023-03-09 21:19:35 +01:00
Maik Ender 4161c79920
Add Support for Xilinx KCU116 (#322)
* initial kcu116 support

* add kintex ultrascale plus family to xilinx.cpp

* add docs

* combine xcku and xcvu check

* rebuild bitstream for -1 speedgrade
2023-03-09 20:48:19 +01:00
Gwenhael Goavec-Merou d5f5593421 cmake,usbBlaster: add option to fix firmware path at build time 2023-03-05 23:20:16 +01:00
Gwenhael Goavec-Merou 8c7b110766 spiFlashdb: Macronix MX25L12833 2023-03-05 16:02:22 +01:00
Gwenhael Goavec-Merou 0675cadfe7 spiFlashdb: ST M25P16 2023-03-05 13:14:01 +01:00
Gwenhael Goavec-Merou 4a6e6f0d35 lattice: when loadConfiguration fails -> check if external flash is blank 2023-03-05 10:16:08 +01:00
Gwenhael Goavec-Merou 3babd5d07d spiInterface: add read method 2023-03-05 10:13:08 +01:00
Gwenhael Goavec-Merou a5489e62f8 spiFlash: ST M25P16 2023-03-04 18:14:37 +01:00
Gwenhael Goavec-Merou cda14f24e3 board: hseda-xc6slx16 2023-03-04 17:55:02 +01:00
Gwenhael Goavec-Merou c35f21a5be latticeBitParser: add SPI_MODE missing instruction (issue #324) 2023-03-04 08:02:24 +01:00
hycrypt 3d9717f7c3 add the skip_load_bridge and skip_reset arguments also for Xilinx devices 2023-03-03 11:18:08 +01:00
Gwenhael Goavec-Merou 9c1876818f README,main: add remote bitbang for ip and port 2023-03-02 13:55:40 +01:00
Gwenhael Goavec-Merou 500c33e037
Merge pull request #318 from trabucayre/remoteBitbang
remoteBitbang_client: adding new protocol (client side)
2023-03-02 13:50:12 +01:00
Gwenhael Goavec-Merou fd97c244d9 remoteBitbang_client: adding new protocol (client side) 2023-03-02 13:47:11 +01:00
Gwenhael Goavec-Merou 7de494f666 adding Opal Kelly XEM8320 board 2023-02-28 22:40:41 +01:00
AEW2015 fe0f0ac0c0 Artix+ AU25P support for Opal Kelly Board 2023-02-28 14:24:49 -07:00
Gwenhael Goavec-Merou 657d98f3c3 args: better --offset description (#319) 2023-02-27 21:15:34 +01:00
Gwenhael Goavec-Merou 567d854edf efinix: fix JTAG: detect family, fix irlen for titanium, add support for bit file, hex file can't be used with titanium 2023-02-26 10:10:46 +01:00
Gwenhael Goavec-Merou 6799115451 parts: fix Efinix titanium irlen 2023-02-26 10:02:26 +01:00
Gwenhael Goavec-Merou 64d6b614b6 efinix: in jtag mode fix access to the ll driver 2023-02-25 18:36:04 +01:00
Gwenhael Goavec-Merou d7d414ea55 jtag: adding getter to lowlevel transport driver 2023-02-25 17:15:25 +01:00
Gwenhael Goavec-Merou daf233d983 efinix: in JTAG mode keep bus_addr, device_addr between jtag and spi interfaces 2023-02-25 17:11:55 +01:00
Gwenhael Goavec-Merou ea6b1989d0 ftdipp_mpsse: adding bus_addr, device_addr getters 2023-02-25 17:10:40 +01:00
Gwenhael Goavec-Merou 7f1f9445d4 cable: bus_addr, device_addr: int -> uint8_t 2023-02-25 17:10:01 +01:00
Jiajie Chen 49ae479833 Add flash support for VCU128
VCU128 does not have secondary flash.
2023-02-22 09:51:16 +08:00