Commit Graph

770 Commits

Author SHA1 Message Date
Niklas Ekström 8d920d7ed0 Bugfix to allow NULL tx pointer
Also set the _clkHZ variable which is needed for timing operations
such as erase.
2022-07-18 18:09:34 +02:00
Niklas Ekström 12955b8711 Initial commit of libgpiod JTAG driver
Not tested yet.
2022-07-18 18:09:34 +02:00
Gwenhael Goavec-Merou 3e35944a4f xvc_server: fix message size 2022-07-06 21:36:57 +02:00
Gwenhael Goavec-Merou 975c40a00a enable xvc only for Linux OS 2022-07-06 21:14:25 +02:00
Gwenhael Goavec-Merou a90a7b6fa5 main: enable xvc_server 2022-07-06 21:00:24 +02:00
Gwenhael Goavec-Merou 34ff4f4020 xvc_server: first draft 2022-07-06 20:58:19 +02:00
Gwenhael Goavec-Merou e91ae5e65b xvc_client: fix frequency convertion 2022-07-06 20:57:47 +02:00
Gwenhael Goavec-Merou de42f8b239 ftdiJtagMPSSE: add writeTMSTDI method with full tms & tdi buffer. Always return TDO buffer 2022-07-03 21:44:03 +02:00
Gwenhael Goavec-Merou f364ea2c8f
Merge pull request #239 from BBBSnowball/better-message-if-cmsisdap-disabled
cmsisDAP: better error message if support is not enabled
2022-07-02 22:30:18 +02:00
Benjamin Koch 8c9a86699b cmsisDAP: better error message if support is not enabled 2022-07-02 17:24:02 +02:00
Benjamin Koch 80cf8edc31 cmsisDAP: fix crash in case hid device cannot be opened 2022-07-02 17:03:31 +02:00
Gwenhael Goavec-Merou 2f30668dbc ORBTrace Mini support (DFU mode) 2022-06-18 22:55:58 +02:00
Gwenhael Goavec-Merou 702ca39300 stop using get_state and promote the use of get_status 2022-06-18 22:50:55 +02:00
Gwenhael Goavec-Merou de2cdcb67a ftdispi: add missing index param 2022-06-18 20:21:13 +02:00
Gwenhael Goavec-Merou 780ea66384 DFU: fix potential leak 2022-06-18 18:47:27 +02:00
Gwenhael Goavec-Merou e21a251af3 DFU: fix detect -> bypass bitstream 2022-06-18 18:39:58 +02:00
Gwenhael Goavec-Merou e278b87a64
Merge pull request #236 from Icenowy/gw2a
Add GW2A support
2022-06-16 07:06:41 +02:00
Gwenhael Goavec-Merou 0779034921
Merge pull request #233 from Icenowy/ep4ce115
Add EP4CE115 support
2022-06-16 06:23:35 +02:00
Icenowy Zheng 3e00756976 part: add GW2A(R)-18(C)
Add JTAG ID code for GW2A(R)-18(C), tested with GW2A-18C on Sipeed Tang
Primer 20K.

Signed-off-by: Icenowy Zheng <uwu@icenowy.me>
2022-06-16 09:54:02 +08:00
Icenowy Zheng fe0b4d347b gowin: add support for GW2A
GW2A has no internal flash, and it uses a yet unknown checksum
algorithm.

Support it by forcing external flash and skip checksum check now.

Signed-off-by: Icenowy Zheng <uwu@icenowy.me>
2022-06-16 09:52:44 +08:00
Icenowy Zheng 37dbaba6b8 part: add EP4CE115
Altera EP4CE115 is a part from Cyclone IV E line.

Add it to the part database.

Signed-off-by: Icenowy Zheng <uwu@icenowy.me>
2022-06-16 08:52:32 +08:00
Gwenhael Goavec-Merou 82c17f6a7d dfu: display error code 2022-06-14 23:14:01 +02:00
Gwenhael Goavec-Merou 4d69675041 dfu: check iProduct and iInterface -> set to a default string when empty 2022-06-14 23:09:43 +02:00
Gwenhael Goavec-Merou c64f1970d6 spiFlash: stop if jedec_id == 0xffffff 2022-06-02 08:52:56 +02:00
Gwenhael Goavec-Merou 1f842e4ebc cable: add missing mpsse_bit_config index 2022-06-02 08:51:47 +02:00
Rengifo, Rodrigo dec1a0920f add means to set cable index from command line 2022-06-01 07:17:38 -07:00
Gwenhael Goavec-Merou 610a495898 main: skip-reset fix typo 2022-05-28 18:06:51 +02:00
Gwenhael Goavec-Merou 26ea58c305 main: always check if board is not null before access 2022-05-28 17:20:53 +02:00
Gwenhael Goavec-Merou 051e2ecbfb add option to bypass reset in SPI write mode. Adapt altera accordingly 2022-05-24 07:29:35 +02:00
Gwenhael Goavec-Merou e066c7f5b0
Merge pull request #222 from el-coder-sb/add-skip-sram-cmd
Add skip sram cmd
2022-05-24 07:16:24 +02:00
Simon Buhrow 847a5040cf add skip_load_bridge cmd-line parameter 2022-05-23 11:51:16 +02:00
Gwenhael Goavec-Merou 056518e7c7 ihexParser: check buffer size, increase if required 2022-05-22 07:34:09 +02:00
Gwenhael Goavec-Merou e1eff76162
Merge pull request #228 from MPLew-is/zcu106
Correct part number for ZCU106 board
2022-05-16 08:52:28 +02:00
Mike Lewis 5295544200 Correct part number for ZCU106 board 2022-05-16 00:44:59 -06:00
Gwenhael Goavec-Merou c9fb3f4065 latticeBitParser: fix end header position with MACHOX3D .bit file 2022-05-14 19:00:21 +02:00
Gwenhael Goavec-Merou a4d5fd8448 lattice: MACHXO3D no exception when flash-sector is not provided in SRAM mode 2022-05-14 18:54:01 +02:00
Xiretza ee3b6965f0 fix(part.hpp): use uint32_t instead of int for fpga_list index
This resulted in an error with GCC 12:

In file included from src/main.cpp:29:
src/part.hpp:148:1: error: narrowing conversion of ‘2165379139’ from ‘unsigned int’ to ‘int’ [-Wnarrowing]
  148 | };
      | ^
2022-05-14 15:36:02 +02:00
Mike Lewis 76f13604d1 Add initial support for ZCU106 development board 2022-05-14 02:48:23 -06:00
Gwenhael Goavec-Merou f83670996e spiFlashdb: adding S25FL512S 2022-05-14 10:16:08 +02:00
Gwenhael Goavec-Merou 74eda1cd8a spiFlashdb: N25Q64 part 2022-05-10 19:07:56 +02:00
Hans Baier 6a2a62cae6 support Kintex XC7K420T 2022-05-10 13:07:47 +07:00
Gwenhael Goavec-Merou 2bbf372a1d
Merge pull request #218 from ejdan/efinix-jtag
efinix: support loading a bitstream to SRAM using only JTAG pins (no GPIO)
2022-05-02 07:05:37 +02:00
Gwenhael Goavec-Merou 84d5c59dfe ftdipp_mpsse: don't throw exception when iProduct is empty: display warn and use empty string 2022-05-01 17:09:53 +02:00
Gwenhael Goavec-Merou db410839af spiInterface: unprotect_flash: fix return. Improve messages 2022-04-30 20:16:30 +02:00
Anders Ejdeling e094494a59 efinix: support loading a bitstream to memory using only JTAG pins (no GPIO). Tested with Trion T120 BGA324 Development Kit but should work on T20BGA324, T20BGA400, T35, T55, T85, and T120 FPGA. 2022-04-29 15:57:20 +02:00
Gwenhael Goavec-Merou d7365495aa spiFlash: fix display: when bp_len==0 -> set bp/tb = 0, otherwise parse reg 2022-04-23 17:58:33 +02:00
Gwenhael Goavec-Merou 5692482152 jlink: write_data -> writeTMSTDI. Fix behaviour 2022-04-17 12:33:37 +02:00
Gwenhael Goavec-Merou b12d174131 part: add 5CEBA9 entry (issue #213) 2022-04-11 19:14:58 +02:00
Gwenhael Goavec-Merou 80eeaef6ab ip CLI arg for XVC 2022-04-11 06:53:22 +02:00
Gwenhael Goavec-Merou 188d7518d1 jlink: check usb_claim error 2022-04-11 06:51:34 +02:00
Gwenhael Goavec-Merou 7bfce0fb2b xvc_client: Xilinx Virtual Cable client PoC 2022-04-10 16:02:39 +02:00
Patrick Urban dce9406599 gatemate: fix failed signal polarity and update documentation
* CFG_FAILED signal is no longer inverted
* minor fix in CFG_MD settings in doc/vendors/colognechip.rst
* update evaluation board URL

Signed-off-by: Patrick Urban <patrick.urban@web.de>
2022-04-09 13:08:57 +02:00
Gwenhael Goavec-Merou 08c460135e xilinx: fix wait until done for spartan3e 2022-04-02 11:53:46 +02:00
Gwenhael Goavec-Merou 285cbde7f4 part: explictly add spartan3e and xc3s250e 2022-04-02 11:52:58 +02:00
Gwenhael Goavec-Merou 7a8ed993f3 spiFlash: bulk_erase: check bp before erase 2022-03-31 06:36:37 +02:00
Gwenhael Goavec-Merou f615627b3c
Merge pull request #204 from rstephan/p_one_flash
Support for the Microchip SST25VF040B flash
2022-03-30 06:45:53 +02:00
Stephan Ruloff 648d8b9e3b Removed `must_relock` part for the "SST25VF040B" as requested 2022-03-29 18:30:23 +02:00
Sylvain Munaut 7a5284212b part: Add support for Kintex Ultrascale XCKU040
Signed-off-by: Sylvain Munaut <tnt@asuka.home.246tnt.com>
2022-03-29 10:40:52 +02:00
Sylvain Munaut 6578bed6aa part: Add support for ZynqMP Ultrascale Plus XCZU11EG
Signed-off-by: Sylvain Munaut <tnt@asuka.home.246tnt.com>
2022-03-29 10:40:38 +02:00
Gwenhael Goavec-Merou f9eb32c778 spiFlash: handle case where TB is not configurable 2022-03-29 07:49:08 +02:00
Gwenhael Goavec-Merou b8fd59e770 ftdipp_mpsse: don't display error when attach kernel driver, when the device hasn't been detach before or when driver isn't loaded. 2022-03-28 18:53:36 +02:00
Gwenhael Goavec-Merou 27f0ff2816
Merge pull request #205 from rstephan/spartan3e
Spartan3E (xc3s500evq100) and Papilio One
2022-03-28 18:37:43 +02:00
Stephan Ruloff 6da87c3d24 xc3s500e IDCODE: revision set to zero. 2022-03-28 18:14:25 +02:00
Stephan Ruloff 8337a926fb Removed TOP/BOTTOM settings from SST25VF040B 2022-03-28 17:54:43 +02:00
Steven Koo 8b6b09ea25 part: Add kintex7 variant xc7k410t 2022-03-28 10:43:11 -05:00
Gwenhael Goavec-Merou 9243a21fe2 xilinx: adapts flow_disable/flow_enable for xc3s, adding custom method to load bitstream for xc3s 2022-03-27 18:11:31 +02:00
Gwenhael Goavec-Merou 386f89ea3a latticeBitParser: when .bit is encrypted use Part: from header to retrieve idcode 2022-03-27 07:51:18 +02:00
Gwenhael Goavec-Merou da3dfff609 part: re-adding version nibble to remove ambiguities between U, UM and UM5G 2022-03-27 07:47:38 +02:00
Gwenhael Goavec-Merou 10ee84bb6d jtag: when verbose > 1: display unfiltered/raw IDCODE 2022-03-27 07:14:14 +02:00
Gwenhael Goavec-Merou 65c1d2ff0e ftdipp_mpsse: change verbose level 2022-03-27 07:13:40 +02:00
Stephan Ruloff b60f37b56d Support for the Papilio One board 2022-03-25 21:44:05 +01:00
Stephan Ruloff 8c4b1b3afd Support for the Microchip SST25VF040B flash.
Programming is slow, only one byte at a time :-(
2022-03-25 21:15:09 +01:00
Gwenhael Goavec-Merou 7d730eeeb6 ftdiJtagxx: check lowlevel init return value 2022-03-20 16:27:51 +01:00
Gwenhael Goavec-Merou 5d22374408 ftdipp_mpsse: robustness: check all function return code / improve a bit error message 2022-03-20 16:20:57 +01:00
Gwenhael Goavec-Merou 7ed9c201ce anlogicCable: remove unused _verbose, _tdi, _tms 2022-03-20 10:10:30 +01:00
Gwenhael Goavec-Merou cdc68b5dfc efinixHexParser: remove unused reverseOrder 2022-03-20 08:51:18 +01:00
Gwenhael Goavec-Merou 3f5aca5248 colognechip: explicitly set _spi or _ftdi_jtag to null, drop useless else if -> if not _spi it must be jtag 2022-03-20 08:44:55 +01:00
Gwenhael Goavec-Merou 684a4363ba efinix: fix dumpFlash: add override, remove filename param and use _filename from constructor 2022-03-20 08:27:13 +01:00
Gwenhael Goavec-Merou 648de05e6d colognechip: fix dumpFlash: add override, remove filename param and use _filename from constructor 2022-03-20 08:25:51 +01:00
Gwenhael Goavec-Merou 74790c40b6 configBitstreamParser: string::find return size_t not uint32_t 2022-03-20 08:24:49 +01:00
Jean THOMAS 80e917fcf1 Use uint32_t for misc_dev_list (fixes #196) 2022-03-19 12:13:07 +01:00
Gwenhael Goavec-Merou 3cef7f920d board: Xilinx ZCU102 2022-03-19 10:08:51 +01:00
Gwenhael Goavec-Merou 8d3310d486 part: ZynqMPSoC XCZU9EG 2022-03-19 10:06:44 +01:00
Gwenhael Goavec-Merou 3210bcd9cb
Merge pull request #194 from infphyny/qmtech_5cefa5f23
Add qmtechCycloneV_5cefa5f23 board and spiOverJtag/spiOverJtag_5cefa5…
2022-03-13 15:25:01 +01:00
Stéphane Chevigny 2ed5eb5eec Rename 5cefa5f23 to 5ce523, add documentation for board and fpga 2022-03-13 09:14:52 -04:00
Gwenhael Goavec-Merou 9f025e8278 jlink: fix workflow failure 2022-03-12 19:01:54 +01:00
Gwenhael Goavec-Merou 18100ec0f3 cable: new SEGGER J-Link support (PoC) 2022-03-12 18:46:23 +01:00
Stéphane Chevigny 7b36bdc893 Add qmtechCycloneV_5cefa5f23 board and spiOverJtag/spiOverJtag_5cefa5f23.rbf.gz bitstream to write flash 2022-03-12 09:25:22 -05:00
Gwenhael Goavec-Merou 15fb5ac591 board: PYNQ-Z2 2022-03-12 14:54:24 +01:00
Stéphane Chevigny ee08b1ac39 add Cyclone V 5CEFA5 in part database 2022-03-11 14:01:50 -05:00
Gwenhael Goavec-Merou 964c7d6659 ftdi MPSSE / jtag: add option to use neg edge for TDO's sampling 2022-03-11 07:45:48 +01:00
Gwenhael Goavec-Merou 86b2e14dbd
Merge pull request #191 from rwhitby/ice40_warnings
ice40: Add override specifier to resolve compiler warnings
2022-03-11 06:50:16 +01:00
Gwenhael Goavec-Merou 259914910f board: Xilinx ZC706 2022-03-10 18:53:41 +01:00
Gwenhael Goavec-Merou 6ba1968952 part: Zynq XC7Z045 2022-03-10 18:53:12 +01:00
Gwenhael Goavec-Merou 74eb812c6d cable: digilent jtag-smt2-nc 2022-03-10 18:52:47 +01:00
Rod Whitby 94c5fbb854 ice40: Add override specifier to resolve compiler warnings
The following compiler warnings are resolved by adding appropriate override specifiers:

In file included from openFPGALoader/src/ice40.cpp:6:
openFPGALoader/src/ice40.hpp:26:8: warning: 'dumpFlash' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
                bool dumpFlash(uint32_t base_addr, uint32_t len);
                     ^
openFPGALoader/src/device.hpp:46:16: note: overridden virtual function is here
                virtual bool dumpFlash(uint32_t base_addr, uint32_t len) {
                             ^
In file included from openFPGALoader/src/ice40.cpp:6:
openFPGALoader/src/ice40.hpp:34:7: warning: 'spi_put' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
                int spi_put(uint8_t cmd, uint8_t *tx, uint8_t *rx,
                    ^
openFPGALoader/src/spiInterface.hpp:65:14: note: overridden virtual function is here
        virtual int spi_put(uint8_t cmd, uint8_t *tx, uint8_t *rx,
                    ^
In file included from openFPGALoader/src/ice40.cpp:6:
openFPGALoader/src/ice40.hpp:39:7: warning: 'spi_put' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
                int spi_put(uint8_t *tx, uint8_t *rx, uint32_t len) {
                    ^
openFPGALoader/src/spiInterface.hpp:75:14: note: overridden virtual function is here
        virtual int spi_put(uint8_t *tx, uint8_t *rx, uint32_t len) = 0;
                    ^
In file included from openFPGALoader/src/ice40.cpp:6:
openFPGALoader/src/ice40.hpp:43:7: warning: 'spi_wait' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
                int spi_wait(uint8_t cmd, uint8_t mask, uint8_t cond,
                    ^
openFPGALoader/src/spiInterface.hpp:85:14: note: overridden virtual function is here
        virtual int spi_wait(uint8_t cmd, uint8_t mask, uint8_t cond,
                    ^
4 warnings generated.
2022-03-10 18:19:49 +10:30
Gwenhael Goavec-Merou 2eac30c24e ftdiJtagMPSSE: fix read/write polarity: always write on neg, read is by default on pos but may on neg with arty 2022-03-10 07:43:14 +01:00
Gwenhael Goavec-Merou 28ebc98b1b board: add CERN SPEC150 2022-03-03 15:40:42 +01:00
Gwenhael Goavec-Merou 75e3d82a92 part: xc6slx150T 2022-03-03 15:37:18 +01:00
Gwenhael Goavec-Merou 86fa1e01de spiFlash: force subsector only for SST26VF032B 2022-02-26 19:10:18 +01:00
Gwenhael Goavec-Merou 02e93ffec6 spiFlashdb: fix bp_offset list 2022-02-26 17:02:38 +01:00
Gwenhael Goavec-Merou add794ab67 spiFlashdb: add microchip SST26VF032B 2022-02-26 16:31:41 +01:00
Gwenhael Goavec-Merou aada7fe26b spiFlash: when no subsector_erase compute end_addr with correct block size 2022-02-26 16:17:49 +01:00
Gwenhael Goavec-Merou 655f2c61ec spiFlash: add no block protect use case 2022-02-26 16:15:50 +01:00
Torsten Reuschel 3cfdfb1856
Update board.hpp
Use default cable. This is equivalent to 6MHz setting, albeit more versatile.
2022-02-21 23:05:37 -04:00
jonathan kimmitt d4e8eef676 Add board and cable defaults for genesys2 2022-02-21 08:11:57 +00:00
Gwenhael Goavec-Merou 52696309bb spiFlashdb: spansion S25FL256S 2022-02-21 08:27:33 +01:00
Hirosh Dabui 7a7f1723ea add support for colorlight-i9 2022-02-20 01:41:17 +01:00
Rod Whitby 6059c9dbfb Remove the Tigard default cable, as the board does not have an on-board JTAG adapter. 2022-02-19 17:14:49 +10:30
Rod Whitby 7022e2101a Add support for the QMTech Kintex7 Core Board 2022-02-19 14:22:55 +10:30
Rod Whitby 1cb85a5a21 Add support for the Spansion S25FL256L flash on the QMTech Kintex 7 board 2022-02-19 14:22:26 +10:30
Hansem Ro 905e96dfec Add digilent_zybo_z7 10/20 support 2022-02-15 21:01:11 -08:00
Gwenhael Goavec-Merou 5099b57ce3
Merge pull request #174 from tarikgraba/master
Add support  for Terasic DE1-SoC board
2022-02-09 20:14:38 +01:00
Gwenhael Goavec-Merou 56457a4023
Merge pull request #173 from rstephan/tables
Nicer layout for the boards/fpga/cables table
2022-02-09 18:17:35 +01:00
Stephan Ruloff 63c9ec01b7 Fixed right alignment problem. 2022-02-09 17:55:16 +01:00
TG 5aa34c6364 board: add Terasic DE1-SoC board 2022-02-09 17:22:38 +01:00
TG d188314ae3 part: add altera 5CSEMA5 (cyclone V Soc) 2022-02-09 17:21:19 +01:00
Gwenhael Goavec-Merou a0ef85d516 display: use a less dark blue 2022-02-09 08:33:21 +01:00
Gwenhael Goavec-Merou 687503673e jtag: for unknown IDCODE display a more complete error 2022-02-09 08:32:41 +01:00
Gwenhael Goavec-Merou 0a43d1b797 part: add map manufacturer id <-> name 2022-02-09 08:32:06 +01:00
Stephan Ruloff 12c5e6ba19 Nicer layout for the boards/fpga/cables table 2022-02-08 19:31:37 +01:00
Gwenhael Goavec-Merou 498c01889f spiFlash: fix overflow test (#172) 2022-02-07 07:44:11 +01:00
Verneri Hirvonen 350570ad2d board: add tangnano1k to board_list 2022-01-28 13:53:33 +02:00
Verneri Hirvonen 977900954e part: add GW1NZ-1 2022-01-27 22:55:21 +02:00
Fabien Marteau db407a4263 adding xilinx AC701 development kit 2022-01-26 16:42:03 +01:00
Fabien Marteau f30cca46d8 no dash for zedboard fpga name 2022-01-26 16:29:35 +01:00
Fabien Marteau 0d1905425c add board zc702 in board.hpp 2022-01-26 16:21:52 +01:00
Gwenhael Goavec-Merou b4ffe4bf66 xilinx: fix typo 2022-01-24 18:58:32 +01:00
Icenowy Zheng acf677dd46 tangnano9k: new board, with the same cable w/ tangnano4k
Signed-off-by: Icenowy Zheng <icenowy@aosc.io>
2022-01-22 20:51:05 +08:00
Icenowy Zheng dc4a454b94 gowin: add support for GW1NR-9C
GW1NR-9C has a different idcode with GW1NR-9.

Add support for it by adding the idcode.

Signed-off-by: Icenowy Zheng <icenowy@aosc.io>
2022-01-22 20:49:35 +08:00
Gwenhael Goavec-Merou fb2aadadad cable: adding Olimex ARM-USB-OCD-H 2022-01-20 19:37:50 +01:00
Gwenhael Goavec-Merou 1ab454359f ftdiJtagMPSSE,ftdipp_mpsse: fix verbose level -> must be an int8_t not uint8_t 2022-01-19 18:42:15 +01:00
Gwenhael Goavec-Merou 5365a9f9cf ice40: program_cram, add TN ref 2022-01-18 08:37:07 +01:00
Gwenhael Goavec-Merou eb462d2bec main: bitstream default target depends on mode spi/jtag 2022-01-18 08:09:54 +01:00
Gwenhael Goavec-Merou 60ba2b1ccc ice40: add CRAM support 2022-01-18 08:08:48 +01:00
Karol Gugala dbc6551a3c part: add Kintex 160T
Signed-off-by: Karol Gugala <kgugala@antmicro.com>
2022-01-14 09:01:23 +01:00
Gwenhael Goavec-Merou ecc76baa97 board: alinx AXU2CGA 2022-01-13 08:55:26 +01:00
Gwenhael Goavec-Merou 904bf46315 part: adding zynqmp xczu2cg idcode 2022-01-13 08:48:53 +01:00
Gwenhael Goavec-Merou f44f92ea4b xilinx: adding zynqmp support and a method to init this family of devices 2022-01-13 08:41:38 +01:00
Gwenhael Goavec-Merou dddee79f53 jtag: adding method to inject device into active device list 2022-01-13 07:42:14 +01:00
Gwenhael Goavec-Merou 1f59dfd671 jtag: improving jtag chain detection: now searching for masked and unmasked idcode 2022-01-13 07:34:00 +01:00
Gwenhael Goavec-Merou 796483f61f jtag: fix shiftIR: bypass_after must be computed in all case 2022-01-09 15:38:37 +01:00
Gwenhael Goavec-Merou ce7f4566c3 board: ulx3s_dfu 2021-12-24 18:10:22 +01:00
Gwenhael Goavec-Merou 2c5a162cc4 dfu: add debug level, only print device open fails in debug mode 2021-12-24 15:48:16 +01:00
Gwenhael Goavec-Merou 17a874fc04 main: fix SPI access 2021-12-24 11:19:30 +01:00
Gwenhael Goavec-Merou cbae44e1ee ice40: flash reset powerup are done into spiFlash 2021-12-24 11:13:36 +01:00
Gwenhael Goavec-Merou 39ed7ec7f1 colognechip: suppress warnings 2021-12-24 10:29:21 +01:00
Gwenhael Goavec-Merou 310d21ebf5 dfu: when libusb_open fails: skip device instead of error and stop 2021-12-24 10:26:31 +01:00
Gwenhael Goavec-Merou 35efeb3eee dfu: check libusb_open return value in searchDFUDevices 2021-12-23 14:08:54 +01:00
Gwenhael Goavec-Merou f943a8d3f0 Merge branch 'master' of github.com:trabucayre/openFPGALoader 2021-12-23 10:29:59 +01:00
Gwenhael Goavec-Merou 3244f2e92a dfu: fix memory leak 2021-12-23 10:29:47 +01:00
Patrick Urban 4cab198915 colognechip integration: create CologneChip SPI object in dynamic fashion as well 2021-12-23 08:54:48 +01:00
Gwenhael Goavec-Merou 0979194da2 dfu: force USB reset when download end in DFUIdle state 2021-12-23 07:22:06 +01:00
Gwenhael Goavec-Merou db92ea068c main: add protection for all devices. Add CLI args 2021-12-22 19:12:33 +01:00
Gwenhael Goavec-Merou fefea9fe8e board: generic FTDI SPI 2021-12-22 19:12:02 +01:00
Gwenhael Goavec-Merou 45f7f72030 all devices: add support to (un)protect flash, implement pre/post flash access. Use new spiInterface methods 2021-12-22 19:11:35 +01:00
Gwenhael Goavec-Merou af14e9b518 ftdispi: pre/post flash access 2021-12-22 19:09:04 +01:00
Gwenhael Goavec-Merou ffa90fb6fb ftdipp_mpsse: better verbose level 2021-12-22 19:08:44 +01:00
Gwenhael Goavec-Merou b25e2e0125 spiFlash: enable/disable protection. now handle correctly device with protection enabled 2021-12-22 19:07:00 +01:00
Gwenhael Goavec-Merou 21b44fc22f spiInterface.hpp: add constructor, (un)protect flash, and generic pre/post flash access methods 2021-12-22 19:05:21 +01:00
Gwenhael Goavec-Merou 7e91d97828 device.hpp: add (un)protect flash methods 2021-12-22 19:03:57 +01:00
Gwenhael Goavec-Merou de2917428e spiInterface: add common method to (un)protect, write and dump SPI flash content 2021-12-22 19:01:58 +01:00
Gwenhael Goavec-Merou 55d5cba9fb spiFlashdb: add spansion S25FL 064P/128P 2021-12-22 18:59:52 +01:00
Gwenhael Goavec-Merou 50bdbde809 spiFlashdb: add micron N25Q32 2021-12-22 18:58:51 +01:00
Gwenhael Goavec-Merou 5df1d9775d spiFlashdb: add windbond w25q devices 2021-12-22 18:58:07 +01:00
Gwenhael Goavec-Merou b18191b0ba spiFlashdb: fix tb_offset for ISSI devices 2021-12-22 18:57:34 +01:00
Gwenhael Goavec-Merou 496e6678ec spiFlashdb: introduce conf register for tb 2021-12-22 18:56:53 +01:00
Gwenhael Goavec-Merou 56a1e0310d board: add arty S7 50 2021-12-21 18:21:39 +01:00
Gwenhael Goavec-Merou 03c7d7faad arty A7 100t support 2021-12-21 07:02:48 +01:00
Gwenhael Goavec-Merou f3e9a9fa6d digilent_arty_z7 10/20 support 2021-12-20 18:10:17 +01:00
Gwenhael Goavec-Merou ee7570b251 zynq xc7z010 support 2021-12-20 18:09:52 +01:00
Gwenhael Goavec-Merou e026aa28c7 Digilent arty s7 25 2021-12-19 17:35:23 +01:00
Gwenhael Goavec-Merou 37abf105aa xilinx: use gz file by default 2021-12-19 17:34:14 +01:00
uis 648f5e8bdb size_t is actually unsigned 2021-12-18 17:03:52 +03:00
Franck Jullien bae403c3a9 efinix/titanium: add missing JTAG idcode 2021-12-14 09:16:08 +01:00
Franck Jullien 18349fb6e8 efinix: add support for Titanium Ti60 f225 dev kit 2021-12-13 22:13:29 +01:00
Patrick Urban 1c91928175
Merge branch 'master' into colognechip/gatemate 2021-12-13 10:18:41 +01:00
Patrick Urban 1e1b93c27a colognechip integration: introduce waitCfgDone() and check for raw data 2021-12-12 15:34:25 +01:00
Patrick Urban e252e713dd colognechip integration: apply review remarks
* add missing #include <string>
* add comment to part.hpp why highest nibble should be kept
* remove _reverseOrder variable from colognechipCfgParser.{hpp,cpp}
* rename cfgDone() to to a more meaningfull waitCfgDone()
2021-12-12 11:55:10 +01:00
Patrick Urban dd0d668d96 colognechip integration: update code style 2021-12-11 16:36:29 +01:00
Patrick Urban e4971897d7 jtag: ckeck highest nibble to prevent confusion between Cologne Chip GateMate and Efinix Trion T4/T8 devices 2021-12-11 16:35:30 +01:00
Icenowy Zheng bc610383cd part: add support for Anlogic ELF2 EF2M45
Anlogic EF2M45 is a FPGA with a co-packaged 4Mbit SPI Flash, and the
JTAG interface is the same with EG4S20.

Add support for it by adding it to the part database.

SPI Flash programming and SRAM programming are both tested.

The support of EF2M45 is also documented in this commit.

Signed-off-by: Icenowy Zheng <icenowy@aosc.io>
2021-12-11 02:12:32 +08:00
Patrick Urban d09e5da0ba colognechip integration: initial commit
This commit adds support for the Cologne Chip GateMate FPGA series. Both
Evaluation Board and Programmer Cable are supported. Configurations can be
loaded into the FPGA with both devices via JTAG or SPI. In addition to
reading/writing data from/to flashes directly via SPI, this can also be done
via the built-in JTAG-SPI-bypass. A direct wiring between programming hardware
and flash is no longer necessary in this case.

Signed-off-by: Patrick Urban <patrick.urban@web.de>
2021-12-10 12:12:32 +01:00
Gwenhael Goavec-Merou e182a53659 dfu: don't check filename -> let configBitstreamParser to do check 2021-12-07 14:17:09 +01:00
Gwenhael Goavec-Merou dfed1d1799 configBitstreamParser: cleanup 2021-12-03 07:21:22 +01:00
Gwenhael Goavec-Merou 9005b2880b CMakeList/configBitstreamParser: add optional zlib-ng support. No zlibxx is required 2021-12-02 07:20:58 +01:00
Gwenhael Goavec-Merou 7ceaab0126 spiOverJtag: add bitstream for ECP4CE15F23 2021-11-28 16:51:42 +01:00
Gwenhael Goavec-Merou 49b6bc6ce3 device: check if it's a compressed file -> extract real extension 2021-11-26 07:35:03 +01:00
abacomartin ac09ac9b96
Merge branch 'trabucayre:master' into master 2021-11-25 15:10:14 +00:00
Martin Beynon 8fc67762f6 merged 2021-11-25 15:09:38 +00:00
Martin Beynon c06e920143 updated to set authentication mode 2021-11-25 14:59:37 +00:00
Martin Beynon 7fe0a5ab66 wip: adding pubkey programming 2021-11-25 14:50:33 +00:00
Martin Beynon 7e7e030661 wip: adding pubkey programming 2021-11-25 14:13:17 +00:00
Gwenhael Goavec-Merou 7a19f94f19 add zlib support (currently limited to altera spiOverJtag) 2021-11-25 08:11:50 +01:00
Gwenhael Goavec-Merou 70e9671b3a device: if filename has no extension -> use raw type 2021-11-24 07:35:33 +01:00
Gwenhael Goavec-Merou 533cd64f37 lattice: if unknown file type, fails only for SRAM 2021-11-24 07:35:10 +01:00
Gwenhael Goavec-Merou 98a025d68e lattice: improve message for idcode mismatch 2021-11-22 07:01:19 +01:00
Gwenhael Goavec-Merou 9f4ed8aaf6 latticeBitParser: fix loop type 2021-11-20 18:36:09 +01:00
Gwenhael Goavec-Merou 2e2e325a9b lattice: check matching idcode between bitstream and FPGA 2021-11-20 17:01:40 +01:00
Gwenhael Goavec-Merou ab43af7f0e latticeBitParser: extract FPGA idcode from configuration data 2021-11-20 17:01:13 +01:00