Gwenhael Goavec-Merou
f2c013daab
spiFlash: added erase_and_prog method with vector of FlashDataSection
2025-12-17 20:05:11 +01:00
Gwenhael Goavec-Merou
4a593c258c
spiFlash: moved BP status, unlock step into a dedicatedmethod
2025-12-17 20:05:11 +01:00
Gwenhael Goavec-Merou
a7e4303563
spiFlash: bulk_erase method: allows BP bypass and printXX with a verbose level
2025-12-17 20:05:11 +01:00
Gwenhael Goavec-Merou
e302bb6edc
spiFlash: added FlashDataSection to handle bitstream per sections when gap or 0xff area are present
2025-12-17 20:05:11 +01:00
Gwenhael Goavec-Merou
7ed4954c91
Merge pull request #599 from zh522130/fix-analogic-high-freq-flash
...
anlogic: fix high frequency flash programming issue
2025-12-13 08:55:14 +01:00
zhangyh
4c17327a65
anlogic: fix high frequency flash programming issue
2025-12-12 04:14:14 +00:00
zhangyh
ebf2f6fd80
efinix: Add header parsing and flash programming validation
...
Parse bitstream header to extract Mode, Width and Device fields.
Add validation for flash programming:
- Check device matches --fpga-part parameter
- Reject passive mode (only active mode supported for flash)
This prevents flashing incorrect bitstreams that would fail to boot.
2025-12-12 02:55:31 +00:00
Florent Kermarrec
206cbd68b7
src/gowin: Add support for GW5AT-15 (used on Sipeed Slogic16U3).
...
JTAG pinout on Sipeed Slogic16U3 is similar to Sipeed Tang Primier 20K JTAG pinout and
extension cable from Tang Primer 20K can be used.
./openFPGALoader -c digilent_hs2 --detect
empty
Jtag frequency : requested 6.00MHz -> real 6.00MHz
index 0:
idcode 0x1681b
manufacturer Gowin
family GW5AT
model GW5AT-15
irlength 8
2025-12-10 10:57:18 +01:00
Gwenhael Goavec-Merou
432cdc2dd7
lattice: added SPI Flash access support for ECP3 family
2025-12-08 16:24:40 +01:00
Andrew E Wilson
648a4a833a
basic PDI prog for Spartan Ultrascale+
2025-10-23 06:44:19 +02:00
hennomann
617cd29dff
Update part.hpp to support Lattice LFE3-150EA device
...
This PR adds device ID support for the Lattice ECP3 LFE3-150EA.
Previously, only the LFE3-70E was supported.
We've tested the implementation and confirmed it works as expected.
We're happy to contribute to expanding ECP3 device support!
2025-10-02 11:32:19 +02:00
Gwenhael Goavec-Merou
8694b3c295
board: added HyVision PCIe OPT01 rev.F (Kintex7 xc7k70tfbg676)
2025-09-24 16:56:46 +02:00
Gwenhael Goavec-Merou
13cf0c59b9
xilinx: load_bridge: uses configBitstreamParser getFilename to print real name instead of theorical (with or without .gz)
2025-09-24 08:07:27 +02:00
Gwenhael Goavec-Merou
6935936a92
configBitstreamParser: added filename getter
2025-09-24 08:06:28 +02:00
Gwenhael Goavec-Merou
39b3ca5871
spiInterface: all methods: added a \n after command displayed (avoids unclear message when calee methods uses printxxx)
2025-09-24 08:06:06 +02:00
Gwenhael Goavec-Merou
6df4bce1fd
xilinx: allows Flash write for Xilinx Spartan3 targets
2025-09-20 17:31:32 +02:00
Gwenhael Goavec-Merou
e2c55f24c0
part: fixed cyclone III/IV/10 LP IDCODE (same code for all families)
2025-09-12 13:26:36 +02:00
Andy
c102426b78
Add altera EP4CE30 ( #584 )
2025-09-08 08:34:37 +02:00
Patrick Urban
cfddee3611
colognechip: add bulk erase + quad enable features and simplify spi_wait overload ( #582 )
...
* colognechip: add bulk erase + quad enable features and simplify spi_wait overload
* colognechip: remove unnecessary code in `set_quad_bit` and `bulk_erase_flash`
2025-09-03 16:26:16 +02:00
Gwenhael Goavec-Merou
501d37e351
Merge pull request #581 from pu-cc/at25ql321
...
spiFlashdb: add AT25QL321
2025-09-03 14:38:11 +02:00
Patrick Urban
41e4a93f80
spiFlashdb: add AT25QL321
2025-09-03 14:11:28 +02:00
Patrick Urban
db64ec92cb
spiFlash: mask RDSR_WIP instead of RDSR_WEL while waiting for completion
2025-09-03 13:55:31 +02:00
Gwenhael Goavec-Merou
bdcdea9a2f
cable: added altera usb blaster III variant
2025-08-27 18:26:17 +02:00
Gwenhael Goavec-Merou
46a0560927
display: std::endl -> \n
2025-08-26 17:51:31 +02:00
Gwenhael Goavec-Merou
850c3d74e0
progressBar: added eol for each progressBar update when no STDOUT_FILENO
2025-08-26 17:49:01 +02:00
Gwenhael Goavec-Merou
2580aed994
esp_usb_jtag: added support for https://github.com/espressif/esp-usb-bridge + small adjusts
2025-08-25 09:38:00 +02:00
Gwenhael Goavec-Merou
c818641cae
main: list_boards: print 'Undefined' when fpga_part or cable_name is empty
2025-08-07 11:00:49 +02:00
Gwenhael Goavec-Merou
bc864100ff
main: list_boards now displays fpga_part too
2025-08-07 09:53:28 +02:00
Denis Bodor
c51c53ee33
Add Altera Cyclone 10 LP 10CL080
2025-07-28 13:27:06 +02:00
Gwenhael Goavec-Merou
a53aedb137
gowin: added (undocumented) sequence to be performed when CRC Error bit is set
2025-07-20 10:23:19 +02:00
Gwenhael Goavec-Merou
388f0b4c90
spiFlashdb: added XTX XT25F32B-S chip
2025-07-20 09:32:12 +02:00
Gwenhael Goavec-Merou
b99672b69e
board: added ULX4M (DFU)
2025-07-19 09:45:04 +02:00
Patrick Urban
3b932dc542
colognechip: Simplify number of jtag bypass bits
2025-07-09 16:13:18 +02:00
Gwenhael Goavec-Merou
3b1a40b798
part.hpp: MAX10: only keep size+Single(S)/Dual-supply(D). Sort between single-supply and dual-supply
2025-07-04 07:28:05 +02:00
Gwenhael Goavec-Merou
4bd9840e46
altera: fix Wc99-designator
2025-07-02 07:17:17 +02:00
Gwenhael Goavec-Merou
b2aa12b582
spiFlash, spiFlashdb: added global_lock flag and uses it instead of jedec_id ( #566 )
2025-06-30 18:26:22 +02:00
Yao Zi
a1ea0c98fc
cmsisDAP: Avoid memcpy() on possibly overlapping buffer
...
I observed strange cmsisDAP behavior when building openFPGALoader with
Clang/musl in release mode: CmsisDAP:display_info() shows the correct
hardware capability that supports JTAG,
...
firmware version : 0254
hardware capabilities : 13
SWO trace buffer size : NA
...
but the detection of JTAG fails in the constructor with a strange
response sequence,
Hardware cap 00 01 00
JTAG init failed with: JTAG is not supported by the probe
With some digging, it's found that the CmsisDAP::xfer() method without
an instruction parameter may be called by the constructor with a rx_buff
pointer overlapping with _ll_buffer, for which memmove() instead of
memcpy() should be used. The behavior of memcpy() is undefined when dst
and src overlap.
Fixes: 53c5d35da6 ("add cmsis dap (hid) support")
Signed-off-by: Yao Zi <ziyao@disroot.org>
2025-06-28 11:53:25 +00:00
Gwenhael Goavec-Merou
e3e93a394e
main: SPI mode without board: check file_size (must be > 0)
2025-06-25 19:21:46 +02:00
Gwenhael Goavec-Merou
dd3204a6e0
main, board: added --pins argument compatible with SPI mode
2025-06-25 19:10:13 +02:00
Gwenhael Goavec-Merou
319c08e841
latticeSSPI: uses registers struct for status
2025-06-19 09:51:44 +02:00
Gwenhael Goavec-Merou
dede406ebc
latticeSSPI: ECP5 driver for Slave SPI mode
2025-06-19 08:34:29 +02:00
Gwenhael Goavec-Merou
21d4fccf28
altera,libusb_ll,mcsParser: fix some compiler's warnings
2025-06-19 08:30:35 +02:00
Gwenhael Goavec-Merou
803bdfecce
altera: MAX10: added --flash-sector support with arbitrary binary file
2025-06-18 18:57:26 +02:00
Gwenhael Goavec-Merou
775477ba8e
part: added Lattice ECP3 LFE3-70E
2025-06-18 16:20:32 +02:00
Gwenhael Goavec-Merou
a7b56c3732
lattice: added ECP3 family support (SRAM only)
2025-06-18 16:20:23 +02:00
Gwenhael Goavec-Merou
098cdd466a
jtag: allows caller to specify tdi level in toggleClk method
2025-06-18 10:01:16 +02:00
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