Skip to content

v1.2.0 release

Latest

Choose a tag to compare

@trabucayre trabucayre released this 18 Oct 09:13
· 5 commits to master since this release

Core

New

  • main: displaySupported added one more space in list-boards
  • main: ftdi-serial is deprecated. Added --usb-serial-num argument

Update

  • CMakeLists.txt: switch to c++17
  • CMakeLists.txt, main: removed USE_DEVICE_ARG usage. Now --device/-d is always available
  • CMakeLists, all: removed epcqx class
  • CMakeLists.txt: uses regex to remove potential rcX in LIBFTDI_VERSION_MINOR
  • main: moved SPI Flash to a dedicated function
  • main,progressBar: --force-terminal-mode argument to force progress bar output as if connected to a terminal (#629)
  • main: removed mcufw debug message
  • README.md, main: update probe-firmware message
  • Enabling the compilation on OpenBSD (#651)
  • Add --version lowercase flag to comply with convention

Fix

  • main: parse_opt: simplify/fix
  • main: #ifdef USE_LIBFTDI must be after the if
  • Revert "CMakeLists.txt: switch to c++17"
  • CMakeLists.txt: revert fad4a28 -> uses pkg_check_modules all the time

Parts

New

  • altera.cpp: support programming Max10 10M50D with .pof
  • altera: agilex3/agilex5 support draft (memory only)
  • Added support for xcvu9p-flgb2104
  • Add support for Altera MAX10 10M16D IdCode:0x31030dd
  • Add memory information for native Altera Max10 10M16D
  • part: added Agilex5 A5EC008B
  • part: added Agilex3 A3CZ135
  • doc/FPGAs: added Agilex 3/5 entries
  • doc/FPGAs, part: added Xilinx Kria xck24/xck26
  • part: MachXO3D: added all model with explicit size/variant when same IDCODE is shared
  • feat: add agilex 3 A3CY100 model to fpga list (#669)
  • Add XCKU095 support
  • Add Altera Cyclone II device IDs. (#697)
  • Add Efinix Ti375N484 support
  • xilinx: add VU19P (xcvu19p) IR code mapping and dispatch (#674)
  • Added support for part xcvu7p-flvb2104, idcode 0x14B29093 (#695)
  • xilinx: add BPI parallel NOR support to dumpFlash()

Update

  • CologneChip: gatemate: allow jtag-spi-bypass for A2
  • Efinix: Check for presence of mode header value before checking it
  • xilinx: fail write-flash on SPI access errors; improve open-file errors

Fix

  • altera: fix 64 bits hex display (PRIx64)
  • altera.cpp: max10 fixed cfm_addr and done_bit_addr for 10M50D
  • colognechip: fix -Wshift-op-parentheses warning
  • Gowin: fix checksum header key typo
  • ice40: fix detect_flash
  • Lattice: fixed IDCODE/Size/variant for all MachXO2 devices
  • Lattice: fixed IDCODE/Size/package for all MachXO3L
  • Lattice: fixed IDCODE/Size/package for all MachXO3LF
  • Xilinx: fix to Xilinx::program so a reset is not performed in SPI_MODE when _skip_reset is set
  • Xilinx: Fix DNA read on Zynq devices

Files

New

  • bitparser: added static method get_idcode to extract IDCODE from Xilinx Configuration data (works for .bit & .bin)
  • bitparser: Add COMPRESS key.
  • vivado 2025.2.1 compatibility: add SW_CRC field to bitstream parser

Update

  • bitparser: Relax unknown header keys to a warning.
  • bitparser: parserHeader. Added bound check and simplied type A parsing
  • dfuFileParser: nitpick
  • fsparser: check lines length
  • latticeBitParser: check file size during parse. Improved a bit parsing speed
  • mcsParser: added guard to avoir bound check failures. Improved code speed with c++17
  • pofParser: added bound check tests

Fix

  • fsparser.cpp: fixed idcode for GW1N(R/Z)-2x
  • latticeBitParser: fix previous commit
  • pofParser: ARRAY2INT32: must be casted to uin32_t not uint16_t
  • Fix for programming mcs file to unknown SPI flash memory model.

Boards

New

  • boards: Terasic Atum A3-Nano
  • board.hpp: Add sp701.
  • board.hpp: Add brs-100-gw1nr9
  • board.hpp: Add epm11
  • boards: add ALINX AXKU095 (XCKU095-FFVA1156)
  • boards: add ALINX AXKU042 and AXKU062 dev boards
  • board: added Arrow AXE5000 (Altera Agilex 5 A5EC008BM16AE6S)
  • doc/boards.yml,board: added Kria KR260 Robotics Starter Kit (kr260)
  • Add support for alibaba cloud xcku3p card
  • add Terasic DE23-Lite support
  • feat: add QMTech Artix-7 XC7A100T (FGG676) board support
  • Add step-mxo2_v1.1 board support.
  • boards: add Alinx AX7035B
  • boards: add RealDigital Blackboard (#737)

Update

  • Update board info.

Fix

  • fix BPI flash selection (on ypcb003381p1 board)

Cables

  • doc/cable: alphabetic order
  • Update docs for JTAG-SMT4
  • xilinx: add xcau7p-sbvc484 support over JTAG
  • Add SPI over JTAG bitfile for XC7K325TFBG900.

New

  • cable.cpp: Add digilent_ft4232.
  • feat: add passive serial mode for usb blaster (altera/intel)
  • usbBlaster: added explicit windex when read_ctrl is used
  • add support for jtag-smt4 'cable'
  • cmsisdap: add support for USB Bulk backend
  • cable: add Sipeed SLogic Combo 8 support
  • xilinxPlatformCableUSB: driver for Xilinx Platform Cable USB probe
  • xilinxPlatformCableUSB: adapts firmware to PID (0x0d: xusb_emb.hex, 0x0013: xusb_xp2.hex
  • cable: added xilinxPlatformCableUsb_alt variant with PID==0x000D (found in SP601)
  • jtag: in MODE_XPCU don't hardcode VID/PID

Update

  • all/everything/world: removed using namespace std to be able to compile in c++17 with windows
  • cmsisDAP: add quirks for certain Atmel tools
  • dirtyJtag: rework error messages in constructor. Added a method to close USB (and to avoids to have multiple time the same piece of code)
  • dirtyJtag: doc + nitpick
  • esp_usb_jtag: disambiguate multiple boards via --busdev-num and --usb-serial-num
  • fx2_ll: check load_firmware return code. Added some progressbar. Allows caller to set the alternate setting for an interface. Expose windex in write_ctrl/read_ctrl
  • cmsisDAP: initWithHID: displays index not device_idx (not updated when not found)
  • cmsisDAP: only throw exception in CTOR method
  • cmsisDAP: move init/dapConnect at CTOR level to avoid dupplicate
  • svf_jtag: add progressbar
  • Allow building XVC client without libftdi.
  • xvc_client: reworks operator priority
  • xvc server: increase buffer size to 1MiB for improved performance over slow connections

Fix

  • ftdiJtagMPSSE.cpp: fix alignment issue
  • ftdipp_mpsse: fix message in setClkFreq
  • ftdipp_mpsse: gpio_write: fix test (missing !)
  • latticeBitParser.cpp: revert/adapts commit 0bc2594 (fails with CMSIS-DAP #634)
  • cable.hpp: fix ACBUS direction/value for usb-blasterIII
  • usbBlaster: fix #ifdef ENABLE_USB_BLASTERII location at CTOR level
  • remoteBitbang_client: fix toggleClk behavior, uses flush instead of ll_write(NULL), fix potential overflows, simplify code
  • cmsisDAP: v1: uses INFO_ID_MAX_PKT_SZ to fix xfer length
  • svf_jtag: fix incorrect handling of spaces and newlines
  • svf_jtag: fix error output
  • xvc_client: block until full reply received, fixes errors on a slow network
  • xvc_client: Send command and parameters in single operation.
  • cmsisDAP: Fix logic errors on _backend identification.

SPI Flash

New

  • add support for MT25QU512 flash
  • add Adesto AT25DF321A support
  • spiFlashdb: add GigaDevice GD25Q256E (0xc86019)
  • spiFlashdb: add GigaDevice GD25Q16C (0xc84015)
  • spiFlashdb: GigaDevice GD25Q32C
  • spiFlashdb: GigaDevice GD25Q32C: typo
  • spiFlashdb: add ISSI IS25WP256 and Quad Enable for IS25LP/WP256
  • spiFlashdb: PUYA P25Q32H
  • spiFlashdb: add Winbond W25Q256PW (0xef6019, 0xef8019)

Update

  • SPIInterface -> FlashInterface
  • Added a higher delay in bulk_erase.

Fix

  • fix SST26VF064B erase

SpiOverJtag

New

  • spiOverJtag: Add support for xcau10p

Update

  • spiOverJtag/xilinx_spiOverJtag.tcl: removed, no more used

Fix

  • fix(spiOverJtag): package-specific FGG676 bitstream build for QMTech XC7A100T (#682)

Doc

Update

  • docs: document DE10-lite MAX 10 support
  • WSL Instructions
  • Update lattice.rst
  • Update chip info.
  • Update info.

Fixes

  • Doc: fix exclusive issue in example commands

CI

Fix

  • CI: fix previous commit
  • CI: added missing hidapi library for macos
  • CI/msys2/PKGBUILD: added missing hidapi dependency

Contributors