Commit Graph

1137 Commits

Author SHA1 Message Date
José Miguel Sánchez García 3723bf7571 Add cable support for ARM-USB-TINY-H based off ARM-USB-OCD-H 2025-06-10 21:54:54 +02:00
Gwenhael Goavec-Merou 347088efb4 ice40: Reuses prepare_flash_access/post_flash_access as much as possible. Removed dupplicated Flash dump informations. Be coherent to status message 2025-06-08 07:20:00 +02:00
Gwenhael Goavec-Merou 2e1c7e29a4 spiFlash: cosmetic 'Read flash ' -> 'Reading' (#558) 2025-06-08 07:01:14 +02:00
Gwenhael Goavec-Merou 765ed526e3 spiFlash: dump: honour _verbose level 2025-06-04 21:38:00 +02:00
Gwenhael Goavec-Merou 32f744979c ice40: uses verbose_level for SPIFlash instead of verbose/quiet (#555) 2025-06-03 11:26:38 +02:00
Gwenhael Goavec-Merou c6d4a8bff1 device: added verbose_level attribute 2025-06-03 11:24:36 +02:00
Gwenhael Goavec-Merou 5f6c1bfcd4
Merge pull request #543 from trabucayre/spiOverJtag_v2
SpiOverJtag v2
2025-05-29 08:41:10 +02:00
Gwenhael Goavec-Merou 03045dc407 xilinx: adapted code to support existing spiOverJtag bitstreams (v1) and new bitstreams (v2) 2025-05-26 09:53:10 +02:00
Gwenhael Goavec-Merou ba48d53409 main: added detect_flash in SPI Mode and with a manufacturer 2025-05-24 07:50:51 +02:00
Gwenhael Goavec-Merou e135f1820b ice40: added detect_flash support 2025-05-24 07:48:21 +02:00
Gwenhael Goavec-Merou 10ba59c1ec libusb_ll,ftdipp_mpsse: Bus and Device must be both == 0 to use filter or uses VID/PID 2025-05-24 07:46:58 +02:00
Gwenhael Goavec-Merou 6c4dbe94cc
Merge pull request #553 from cheyao/master
Add support for icepi zero
2025-05-23 07:27:18 +02:00
Cyao 7c423c15fd Add icepi zero to board.hpp 2025-05-23 07:02:44 +02:00
Junhui Liu 5fefbb39af Add support for MILIANKE-S200-EG4D20 and update document
Add board definition and FPGA part ID for the MILIANKE S200 EG4D20
development board. Also update related documentation and outdated URL.

Tested ok by loading bitstream to SRAM and FLASH.

Signed-off-by: Junhui Liu <junhui.liu@pigmoral.tech>
2025-05-22 11:05:51 +08:00
Junhui Liu 951db00617 anlogicCable: Fix wrong ANLOGICCABLE_VIDv1
ANLOGICCABLE_VIDv1 should keep the old ANLOGICCABLE_VID to compatible
with the original device.

Fixes: 4b008a0 ("anlogicCable: refresh with new VID")
Signed-off-by: Junhui Liu <junhui.liu@pigmoral.tech>
2025-05-22 10:37:04 +08:00
Gwenhael Goavec-Merou e18c139941 spiFlashdb.hpp: disables quad mode configuration for all N25Q. It's useless because the chip is able by default to support single and quad transaction and after this configuration the flash is unable to works in single mode. 2025-05-21 10:17:10 +02:00
Gwenhael Goavec-Merou e6ee4fb99a libusb_ll: probe type -> probe_type 2025-05-15 18:18:49 +02:00
Gwenhael Goavec-Merou 392b4c61ee libusb_ll/scan: improved display by align column according to max size (#549) 2025-05-15 08:09:25 +02:00
Julio Nunes Avelar c291aade70
Adding support for Open Source SDR Lab Kintex-7 325t FPGA PCIE Development Board 2025-05-12 12:38:30 -03:00
Gwenhael Goavec-Merou 4553bacb05 colognechip: performs reset after SPI Flash write 2025-05-01 16:19:05 +02:00
Dusk f6afb5ab9f Add support for Digilent Anvyl, the Big Red Board.
Programming to SRAM works. Programming flash works with a renamed
spiOverJtag bitfile - cs(g)484 is different from fg(g)484, but the
configuration flash IOs all end up on the same pads in the end.
2025-04-26 23:49:24 -07:00
Gwenhael Goavec-Merou 7a509b56ee
Merge pull request #541 from bl0x/numato-neso-support
Add support for Numatolab Neso board.
2025-04-24 06:59:25 +02:00
Mike Goelzer ff1e77debf adds GCM board type and FT4232H interface B cable 2025-04-23 07:04:40 -06:00
Gwenhael Goavec-Merou d942c79f62 jtag: added method to retrieves number of devices in the JTAG chain 2025-04-22 18:59:19 +02:00
Bastian Löher bdeb74b61e Add support for Numatolab Neso board. Programming SRAM over USB works, when board jumpers are set for JTAG programming mode. SPI flashing does not work properly (does not boot). 2025-04-21 21:17:54 +02:00
Gwenhael Goavec-Merou 198cfbe604 ihexParser: added type 04 (Extented Linear Address Record) and 05 (Start Linear Address Record) 2025-04-21 17:47:02 +02:00
Gwenhael Goavec-Merou c97369c241 spiFlash: only uses spi_put with distinct cmd parameter 2025-04-21 07:42:26 +02:00
Gwenhael Goavec-Merou 6c0c38d0cc esp_usb_jtag: added reference to esp32s3-jtag repository 2025-04-20 12:47:28 +02:00
Gwenhael Goavec-Merou b7967cf71a esp_usb_jtag: improves
- esp_usb_jtag: added xfer method to handle/simplify libusb_bulk_transfer calls
- src/esp_usb_jtag.cpp: simplify some operations
- src/esp_usb_jtag.cpp: writeTDI: fixed rx buffer index, added a basic code to handle end transaction
- src/esp_usb_jtag.cpp: writeTMS: store and uses _tdi & _tms
- src/esp_usb_jtag.cpp: toggleClock: re-uses _tdi/_tms
- src/esp_usb_jtag.cpp: writeTDI: ditto
- esp_usb_jtag: fixed verbosity level/be more quiet
- esp_usb_jtag: fixed writeTDI with end and tms transition: now integrated instead of distinct sequence. Fixed TDI value with tms transition. Working with ECP5
- esp_usb_jtag: added optional parameter to lower timeout error (useful when it's time to flush the device)
- esp_usb_jtag: fixed writeTDI when tx is NULL
2025-04-18 07:32:37 +02:00
Emard fa1d328b93 esp_usb_jtag: new cable
- copy dirtyjtag to esp_usb_jtag, it compiles
- copy protocol definiton, defines and private data/struct from openocd esp_usb_jtag.c
- ulx3s_esp board with esp32s3 cable
- esp_usb_jtag specify usb vid:pid in jtag.cpp
- hardcode usb interface and endpoints
- getting caps
- set chip id (not applicable for fpga)
- tms write done, untested
- cleanup and toggle clk
- 32bit counting
- setting divisor (todo read base freq)
- div range within 1-255
- base speed from descriptor
- fix doc typo with swapped tms/tdi some cleanup but it doesn't work.
2025-04-18 07:32:15 +02:00
Gwenhael Goavec-Merou d155bf6a35
Merge pull request #538 from nexthop-ai/nate-a7-15t
Add support for Artix A7 15t
2025-04-16 06:14:55 +02:00
Junhui Liu 68c7786f5f Add support for xc7k480t 2025-04-09 21:01:16 +08:00
Nate White 6e05a7fa25 Add support for Artix A7 15t
Tested on real hardware, connecting through Linux gpiod
2025-04-08 15:31:41 +00:00
Gwenhael Goavec-Merou ccb11ffe01
Merge pull request #534 from phdussud/master
Fix incompatibility with Lattice FPGA
2025-03-30 08:56:35 +02:00
Patrick Dussud 6623ceff28 Fix incompatibility with Lattice FPGA 2025-03-29 17:23:02 -07:00
Clemens Horch fd66d4a74a Added support for Everspin MRAM (EM008LX, EM016LX, EM032LX and EM064LX) 2025-03-28 09:06:02 +01:00
Gwenhael Goavec-Merou 5ced26c3f6 gowin: Improved eraseSRAM/SPI Flash prepare for Arora V devices 2025-03-26 13:14:39 +01:00
Franck Jullien 1698d6751e part.hpp: add Xilinx xc7s75 2025-03-25 11:12:05 +01:00
Gwenhael Goavec-Merou f5ed5c4400
Merge pull request #529 from mer0m/master
kcu105: add support for secondary QSPI
2025-03-21 19:12:44 +01:00
vbuitvydas b1f4c35312 Added support for MX25L25645G FLASH memory 2025-03-21 15:50:17 +02:00
Gwenhael Goavec-Merou 671224a544 mcsParser: check if _bit_data size is not larger than bitstream 2025-03-21 06:47:30 +01:00
bma 4e5fd9fabc Merge branch 'kcu105_dual_qspi' 2025-03-20 20:47:12 +01:00
bma 1c78344ca5 kcu105: add secondary qspi detection and dump 2025-03-20 20:11:02 +01:00
bma 1bb69dcf22 kcu105: add fpga package in description 2025-03-20 20:09:46 +01:00
Gwenhael Goavec-Merou 4c4f48ea93 fix to have an happy CI 2025-03-18 23:02:11 +01:00
Gwenhael Goavec-Merou 414a7259f0 altera: uses --flash-sector to only update a subset of internal flash sectors 2025-03-18 22:42:00 +01:00
Gwenhael Goavec-Merou 719697eabe common: added function to split a string to a vector by using a delimiter 2025-03-18 22:39:44 +01:00
Gwenhael Goavec-Merou 4a5a912b9d mcsParser: fixed warnings 2025-03-17 07:25:13 +01:00
Gwenhael Goavec-Merou 2ee72c0556 mcsParser: _bit_length/buffer size / addr sanity check 2025-03-17 07:19:19 +01:00
Gwenhael Goavec-Merou f86037231a altera: added max10_mem_t in max10_memory_map for 10M16SA Max10 variant 2025-03-16 08:50:13 +01:00
Gwenhael Goavec-Merou 1abb1c2453 altera: added sectors erase and UFM write
- updated max10_mem_t to have sectors erase addresses
- updated max10_flow_erase to perform a full erase or sectors per
  sectors
- added a dedicated method to perform UFM erase and write without full
  internal flash erase and with arbitrary file instead of POF
2025-03-15 07:45:16 +01:00
Marcus Comstedt 703af08c91
xvc_server: Make thread exit cleanly (#526) 2025-03-10 21:25:13 +01:00
Gwenhael Goavec-Merou b2c2ae80c0
Merge pull request #528 from mc-requtech/xvc-server-libgpiod
libgpiodJtagBitbang: add support for XVC server
2025-03-10 20:25:38 +01:00
Marcus Comstedt a39aa2d43e libgpiodJtagBitbang: add support for XVC server 2025-03-10 15:29:06 +01:00
Gwenhael Goavec-Merou 6f29d9ecd1 ftdispi: fixed ft2232_spi_wr_and_rd: buffer is empty when transaction is read-only 2025-03-09 08:37:29 +01:00
Marcus Comstedt 6dbde4c368 gowin: Fix compilation on musl 2025-03-07 15:38:14 +01:00
Gwenhael Goavec-Merou 3cf558ebe2 colognechip: added a workaround to drive reset pin with DirtyJTAG cable
(requires a recent DirtyJTAG firmware)
2025-03-07 07:19:39 +01:00
Gwenhael Goavec-Merou 3c7324d14d dirtyJtag: added SRST/TRST values. Added method to read/set GPIOs level 2025-03-07 07:19:14 +01:00
Gwenhael Goavec-Merou ab8d8fc0d3 gowin: Arora V: fix SRAM erase/load when flash is blank and timeout bit is set 2025-03-06 20:05:31 +01:00
Gwenhael Goavec-Merou ee8decdfe6 ftdispi: ft2232_spi_wr_and_rd: improved error messages 2025-03-02 09:11:49 +01:00
Gwenhael Goavec-Merou ecb22b2eeb ftdispi: ft2232_spi_wr_and_rd: use dedicated buffer for MPSSE command to
avoid overflow. Simplify code, improve error message (issue #524 and
2025-03-02 09:00:49 +01:00
Gwenhael Goavec-Merou 564485036e doc/boards: added alinx_ax7201/alinx_ax703 entries. 2025-02-27 06:44:52 +01:00
TarikHamedovic c0cfc0cc57 Added alinx_ax7203 and alinx_ax7201 boards 2025-02-27 04:13:42 +01:00
Gwenhael Goavec-Merou 989c8f8ccb ftdispi: lowlevel init/MPSSE configuration before pins manipulation (issue #519) 2025-02-26 19:48:42 +01:00
Gwenhael Goavec-Merou fbee81b1d0 efinix.cpp: programJTAG. Fixed IDCODE read 4 -> 32 (issue #520) 2025-02-26 19:38:10 +01:00
Gwenhael Goavec-Merou 2ff215dfff board, efinix: added SPI variant for efinix t20 BGA256 board 2025-02-24 20:33:01 +01:00
Gwenhael Goavec-Merou c6e5ec9cb0 anlogicCable: fixed typo 2025-02-24 19:42:30 +01:00
Gwenhael Goavec-Merou a8d5247650 anlogicCable: added pinout + link 2025-02-23 09:00:30 +01:00
Gwenhael Goavec-Merou 4b008a0196 anlogicCable: refresh with new VID 2025-02-23 08:59:08 +01:00
Gwenhael Goavec-Merou 7ed62601c7 altera: fixed UFM: MAX10 memory is in reverse order, UFM1 is BEFORE UFM0 2025-02-16 15:30:30 +01:00
AEW2015 d61e147989 added 1.35v csg325 build and Macronix flash 2025-02-15 14:24:42 -07:00
Gwenhael Goavec-Merou c4d4e8db7e doc/boards.yml, src/board.py: added tangconsole entry 2025-02-15 11:39:37 +01:00
Gwenhael Goavec-Merou 79054f3fa1
Merge pull request #512 from antmicro/fix-null-values-in-stdout
Fix snprintf usage
2025-02-13 19:47:45 +01:00
Gwenhael Goavec-Merou b839792220 altera: added internal flash dump support for MAX10 devices 2025-02-02 20:50:06 +01:00
Gwenhael Goavec-Merou 5f673c6f14 altera: max_10 -> max10 2025-02-02 09:11:14 +01:00
Gwenhael Goavec-Merou ab8bed3f26 altera: max10_program: respect _verbose variable 2025-02-02 09:10:37 +01:00
Gwenhael Goavec-Merou 182e30b637 part,gowin,fsparser: added Gowin Arora V GW5AT-60 Variant 2025-02-01 12:19:34 +01:00
Gwenhael Goavec-Merou 533dd1ea5f altera: cosmetic/linter 2025-02-01 08:28:17 +01:00
Gwenhael Goavec-Merou 959201a21f altera: MAX10 fully rework POF to internal flash mapping, added UFM write and note related to internal flash sections vs POF UFM/CFM sections 2025-02-01 08:14:07 +01:00
Gwenhael Goavec-Merou c3170cdfb9 altera: MAX10: added pgm_success_addr/done_bit_addr 2025-02-01 08:12:04 +01:00
Gwenhael Goavec-Merou 8e104d723c pofParser: displayHeader: improve messages 2025-02-01 08:09:59 +01:00
Gwenhael Goavec-Merou 6f42d28d5e pofParser: honour CFM1/CFM2 data pointer 2025-02-01 08:09:29 +01:00
Gwenhael Goavec-Merou 8160e716e8 pofParser: flag 0x11: added unknown section when verbose 2025-02-01 08:08:59 +01:00
Gwenhael Goavec-Merou 8f46edc8b3 pofParser: parseHeader: better message + note 2025-02-01 08:08:34 +01:00
Gwenhael Goavec-Merou 154bf5b5ec pofParser: added flag 0x13 parsing with usercode extract 2025-02-01 08:07:42 +01:00
Gwenhael Goavec-Merou 65afd7da0b pofParser: getData/getLength: check if section exists: return data/length or null/-1 2025-02-01 08:06:59 +01:00
Maciej Dudek e8d8ecc363 Fix snprintf usage
Some code used snprintf on std::string objects.
This caused unexpected behaviour where '\0' was printed to the output file.
This commit adds intermediate char* buffer which is later used to
initialize std::string. This string is later resized to the correct
expected length.

Signed-off-by: Maciej Dudek <mdudek@antmicro.com>
2025-01-24 11:48:37 +01:00
Gwenhael Goavec-Merou 5847ec2666 doc/boards.yml,src/board.hpp: fixed ac701 device code 2025-01-15 06:57:42 +01:00
steward-fu f4fee37cea Added STEP-MXO2_V2 board support. 2025-01-11 23:14:36 +08:00
steward-fu 79cf67e964 Added STEP-MAX10 V1 support. 2025-01-10 07:39:30 +08:00
Gwenhael Goavec-Merou 867f18236e
Merge pull request #505 from steward-fu/master
Add Altera 10M02SCM153C8G Support.
2025-01-09 07:19:25 +01:00
steward-fu ce92b577d5 Added 10M02SCM153C8G support. 2025-01-09 07:35:50 +08:00
ZhiYuanNJ fcaf836a40
Update ch347jtag.cpp
Update read/write timeout
2025-01-08 13:13:28 +08:00
Gwenhael Goavec-Merou 7dac3ef447 altera: first draft for max10 native support (with pof and only for internal flash) 2024-12-31 18:42:52 +01:00
Gwenhael Goavec-Merou 01039bc710 libgpiodJtagBitbang: simplify code when libgpiodv2 is used 2024-12-31 08:31:49 +01:00
Gwenhael Goavec-Merou 2103316baf lattice: added support for reset method (only tested with ECP5 2024-12-19 14:59:35 +01:00
Gwenhael Goavec-Merou 318ebcab22 main.cpp: added default value for user_flash in struct arguments args 2024-12-15 16:45:39 +01:00
Gwenhael Goavec-Merou a06bae1f5e part.hpp: cosmetic 2024-12-15 16:04:20 +01:00
Jean THOMAS 46ff6cb2eb gowin: Implement user flash programming for GW1N9 2024-12-11 12:19:07 +01:00
Jean THOMAS ffa006d0ee Add 'user-flash' CLI argument 2024-12-11 12:01:37 +01:00