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
Gwenhael Goavec-Merou
1637d6f484
lattice: fix REG_STATUS_CNF_CHK_MASK offset: not the same for machXO3D and others
2021-11-20 16:57:31 +01:00
Gwenhael Goavec-Merou
7f6a68ae2c
lattice: cppcheck/lint
2021-11-20 16:07:53 +01:00
Gwenhael Goavec-Merou
5f78204f22
Merge pull request #130 from abacomartin/master
...
adding support for MachXO3D
2021-11-20 15:35:01 +01:00
Martin Beynon
482141c556
verbose/verify modifications + common code moved to calling func + more white space!
2021-11-19 15:21:52 +00:00
Martin Beynon
393bf1d28b
Unused variables (plus some more white space fixes)
2021-11-19 15:11:02 +00:00
Gwenhael Goavec-Merou
7ed432cba2
board: add QMTECH Cyclone IV Core Board
2021-11-14 08:45:11 +01:00
Gwenhael Goavec-Merou
48c326130a
part: EP3C16 and EP4CE15 have same idcode
2021-11-14 08:44:39 +01:00
Gwenhael Goavec-Merou
952084cd1d
all jtag interface: don't convert verbosity level to bool
2021-11-11 17:42:51 +01:00
Gwenhael Goavec-Merou
8df01663ff
main: raise error when board name is provided but not found
2021-11-11 17:20:51 +01:00
Martin Beynon
07752c37e2
fix up line endings and white space issues - also moved the flash sector if block into MachXO3D family - as not required for other types
2021-11-11 09:04:50 +00:00
Martin Beynon
b6979f54f7
adding support for MachXO3D
2021-11-09 08:54:09 +00:00
Gwenhael Goavec-Merou
3b15a633fa
ch552_jtag: cleanup and fix buffer flush with previous libftdi version
2021-11-06 10:52:53 +01:00
Gwenhael Goavec-Merou
745844f0a0
ftdipp_mpsse: check mpsse_write return value
2021-11-06 10:33:48 +01:00
Gwenhael Goavec-Merou
f843dc2eb2
ch552_jtag: driver for ch552_jtag firmware (ft2232c clone)
2021-11-06 10:33:25 +01:00
Gwenhael Goavec-Merou
fb6a3b9f03
all cables: writeTMS len int -> uint32_t
2021-11-06 10:31:00 +01:00
Gwenhael Goavec-Merou
28620f8ce9
altera: check file type: for an unknown type user has to explicitly provides flash mode fails otherwise
2021-11-06 08:37:14 +01:00
Gwenhael Goavec-Merou
b27422cbe9
Merge branch 'master' of github.com:trabucayre/openFPGALoader
2021-10-23 08:44:28 +02:00
Gwenhael Goavec-Merou
649554f3fd
efinix: add jtag support, introduce oe_pin in board configuration, add xyloni jtag interface
2021-10-23 08:44:23 +02:00
Gwenhael Goavec-Merou
859c1a1a0f
spiFlash: erase using 4 or 64Kb
2021-10-20 08:00:21 +02:00
Gwenhael Goavec-Merou
c043da874c
spiFlash: enable_protection method
2021-10-20 07:43:47 +02:00
Gwenhael Goavec-Merou
3730e8189d
spiFlash: extract status register display from read_status_reg
2021-10-19 07:06:46 +02:00
Gwenhael Goavec-Merou
6714400909
spiFlashdb: introduce tb_register to know tb location register
2021-10-19 06:55:30 +02:00
Gwenhael Goavec-Merou
d8b8afce99
spiFlash: fix len_to_bp mask
2021-10-18 07:34:27 +02:00
Florent Kermarrec
7d8c8b2dcb
Add Trion T120 BGA 576 Dev Kit support.
...
This Dev Kit uses a FT2232 chip, so also rename efinix_spi with efinix_spi_ft4232
and introduce efinix_spi_ft2232.
2021-10-15 09:20:36 +02:00
emard
103de667f7
protection descriptor for IS25LP128
2021-10-14 20:55:42 +02:00
emard
eb545b5256
typo
2021-10-14 20:52:46 +02:00
Gwenhael Goavec-Merou
4b3755f368
cmsisDAP: fix buffer length
2021-10-13 07:16:30 +02:00
Gwenhael Goavec-Merou
b1b1e5a4a8
main: don't limit vid/pid to dfu
2021-10-13 06:51:22 +02:00
Gwenhael Goavec-Merou
de88698b0c
cmsisDAP: close device and context after use/ when fail
2021-10-13 06:46:05 +02:00
Gwenhael Goavec-Merou
2d26b9d485
cmsisDAP: typo
2021-10-12 16:38:03 +02:00
Gwenhael Goavec-Merou
6a4d24cf7a
cmsisDAP: send disconnect after use
2021-10-12 07:52:38 +02:00
Gwenhael Goavec-Merou
dd4e3e40df
spiFlash: typo
2021-10-10 18:27:41 +02:00
Gwenhael Goavec-Merou
ddcf8fd1b1
spiFlash: add flash_model, method to convert len to block protect and block protect to len
2021-10-10 18:26:04 +02:00
Gwenhael Goavec-Merou
22c095547e
spi: introduce list of known spi flash devices (required for protection)
2021-10-10 18:25:09 +02:00
Gwenhael Goavec-Merou
4c2a091ab1
xilinx: introduce coolrunner-II support
2021-10-06 08:46:00 +02:00
Gwenhael Goavec-Merou
69ac10e2f7
Merge branch 'master' of github.com:trabucayre/openFPGALoader
2021-10-03 18:34:07 +02:00
Gwenhael Goavec-Merou
6858cabc7d
main: introduce vid/pid args
2021-10-03 18:33:55 +02:00
Gwenhael Goavec-Merou
2adf4d585e
dfu: throw exception when vid & pid == 0; change altsetting type
2021-10-03 18:33:07 +02:00
Gwenhael Goavec-Merou
e6c01f75ad
board: fix altsetting default for non-DFU boards, use signed type
2021-10-03 18:31:55 +02:00
Uwe Bonnes
f6dfee2db0
xilinx: Adapt wait times with JTAG frequency.
...
Allowed frequency is up to 10 MHz according to xc95XXXxl_1532.bsd
2021-10-03 17:37:28 +02:00
Gwenhael Goavec-Merou
c165154317
xilinxMapParser: typo
2021-10-03 16:46:12 +02:00
Gwenhael Goavec-Merou
1233459528
xilinxMapParser: fuse mapping for xc2c jed
2021-10-03 16:25:41 +02:00
Gwenhael Goavec-Merou
a38d0b2d36
board: force 0 for altsetting in non-DFU type
2021-10-03 15:23:21 +02:00
Gwenhael Goavec-Merou
144e376d36
board: add support for 1bitsquared iCEBreaker-bitsy
2021-10-03 12:42:35 +02:00
Gwenhael Goavec-Merou
ea613fa97a
dfu/main: add args to select altsetting and add filter to select corresponding interface
2021-10-03 12:39:06 +02:00
Gwenhael Goavec-Merou
abef1f4968
add verbose-level args: -1 quiet, 0 normal mode, 1 verbose, 2 debug lowlevel
2021-10-03 08:22:35 +02:00
Gwenhael Goavec-Merou
28cbd1faad
spiFlash: workaround for dump > 1M
2021-10-02 19:25:04 +02:00
Gwenhael Goavec-Merou
fe1634897f
part: merge ECP5-12 & ECP5-25 (same idcode)
2021-10-02 15:20:55 +02:00
Gwenhael Goavec-Merou
2e64a52cb5
Merge pull request #118 from UweBonnes/mpsse_toggle
...
ftdiJtagMPSSE: Fix TCK toggle for large numbers.
2021-09-29 06:31:50 +02:00
Uwe Bonnes
f9a62b418b
ftdiJtagMPSSE: Fix TCK toggle for large numbers.
2021-09-28 21:06:46 +02:00
Uwe Bonnes
8ec009fcea
part.hpp: Fix wrong description of XC95288XL
2021-09-28 12:33:14 +02:00
Gwenhael Goavec-Merou
cee91fa5a1
jedParser: p2
2021-09-25 15:06:47 +02:00
Gwenhael Goavec-Merou
bd903be6b6
jedParser: fix checksum when configuration data size is not multiple of 8bits
2021-09-25 15:06:13 +02:00
Vegard Storheil Eriksen
36783d74c4
progressBar: Use only stdout.
...
The progress markers of the progress bar were output to stderr while the
rest was output to stdout. Move everything to stdout.
2021-09-20 15:14:23 +02:00
Gwenhael Goavec-Merou
3698b98976
ftdiJtagMPSSE: improve a bit USB transaction
2021-09-18 14:54:40 +02:00
Gwenhael Goavec-Merou
57c0f16be4
ftdipp_mpsse: typo in setClkFreq
2021-09-16 07:41:05 +02:00
Gwenhael Goavec-Merou
85b53b5918
add gowin external spi in bscan and --external-flash option
2021-09-15 20:18:49 +02:00
Gwenhael Goavec-Merou
ae2fcfdca1
main: args. Fix comments for load and write bitstream
2021-09-13 14:10:42 +02:00
Fabien Marteau
b70bd83ced
Merge branch 'trabucayre:master' into master
2021-09-03 08:52:18 +02:00
Gwenhael Goavec-Merou
2ef040774e
fsparser: gw1nsr-4c idcode/nb_line
2021-09-03 07:47:58 +02:00
Fabien Marteau
23cf631b85
fix part name GW1NSR-4 -> GW1NSR-4C
2021-09-02 14:56:22 +02:00
Fabien Marteau
11bdebd884
adding reference to Tang Nano 4K kit in doc
2021-09-02 13:54:34 +02:00
Fabien Marteau
94385a758e
adding IDCODE for GW1NSR, for Tang Nano 4K kit
2021-09-02 13:46:35 +02:00
Gwenhael Goavec-Merou
bb69297ed0
xilinx: with XCF reconfigure FPGA after write
2021-08-30 17:15:45 +02:00
Gwenhael Goavec-Merou
2606bf7017
xilinx/doc: add spartan3 and XCF flash
2021-08-30 15:08:11 +02:00
Gwenhael Goavec-Merou
92a4b9bcd8
jtag: fix idcode mask and display
2021-08-28 16:31:24 +02:00
Gwenhael Goavec-Merou
304ec0071c
mask idcode upper nibble (version in IEEE 1149.1)
2021-08-27 15:10:12 +02:00
Gwenhael Goavec-Merou
faedb0cfd7
lattice: throw exception when program fails
2021-08-23 16:27:28 +02:00
Gwenhael Goavec-Merou
74b8305730
xilinx: test parse return for jedec instead of catch exception
2021-08-20 09:54:43 +02:00
Gwenhael Goavec-Merou
db5d4e75d9
jedParser: fix checksum for xc9500
2021-08-20 09:44:38 +02:00
Gwenhael Goavec-Merou
521c703842
part: add xc95 family idcode
2021-08-18 15:41:39 +02:00
Gwenhael Goavec-Merou
b61884614e
xilinx: add support for XC95 CPLD family
2021-08-18 15:38:49 +02:00
Gwenhael Goavec-Merou
471fbb6a81
jedParser: add xilinx compatibility
2021-08-18 15:38:24 +02:00
Gwenhael Goavec-Merou
274d4ea2dc
main: fix display order for detect
2021-08-18 07:40:25 +02:00
Gwenhael Goavec-Merou
c47b494311
jtag: add access to targeted idcode
2021-08-18 07:39:23 +02:00
Gwenhael Goavec-Merou
630d4428c6
main: DFU mode: pass board vid/pid
2021-07-17 08:36:32 +02:00
Gwenhael Goavec-Merou
cbe2bf5494
dfu: try to open dfu vid/pid, next board vid/pid. without vid/pid download is forbidden. Simplify detection in not enumerate mode. Display iProduct
2021-07-17 08:36:13 +02:00
Gwenhael Goavec-Merou
b8e2939776
board: add vid/pid for DFU at board level
2021-07-17 08:34:44 +02:00
Gwenhael Goavec-Merou
7113f4b36b
part: add Gowin GW1N-2
2021-07-16 07:42:34 +02:00
Gwenhael Goavec-Merou
651fdd8beb
ftdixx: improve workaround for arty. Not required with a classic ft2232
2021-07-14 19:09:39 +02:00
Gwenhael Goavec-Merou
cd64bce4f2
fix warning in Debug mode
2021-07-14 17:59:02 +02:00
Gwenhael Goavec-Merou
be6ed217dd
main: display error message if program fails
2021-07-14 16:39:14 +02:00
Gwenhael Goavec-Merou
1e0a06288d
configBitstreamParser: don't compute reverseByte, use a precomputed table: gain: 200ms for arty @30MHz
2021-07-14 08:44:22 +02:00
Gwenhael Goavec-Merou
cc688d6db6
main: small fix
2021-07-14 08:07:51 +02:00
Gwenhael Goavec-Merou
894cda820f
board: add default frequency option for BITBANG and SPI boards
2021-07-14 08:05:36 +02:00
Gwenhael Goavec-Merou
13af012163
main: avoid potential miss with probe clock frequency
2021-07-14 08:04:43 +02:00
Gwenhael Goavec-Merou
fd329158de
Merge pull request #98 from ultraembedded/master
...
Add board specific default frequency
2021-07-14 07:53:13 +02:00
Gwenhael Goavec-Merou
acf7d2a0a8
ftdiJtagMPSSE: add work around to deal with freq >= 15MHz
2021-07-13 07:00:30 +02:00
Gwenhael Goavec-Merou
594f065116
ftdipp_mpsse: use runtime_error instead of simple exception
2021-07-12 08:05:25 +02:00
ultraembedded
f8831f329c
Only use board clock speed if user does not specify an alternate freq
2021-07-11 15:27:46 +01:00
ultraembedded
797785ce93
Allow board configuration table to contain a default clock speed (as some boards are known to work at higher speeds safely). Move Digilent Arty to 10MHz (tested).
2021-07-11 15:20:15 +01:00
Gwenhael Goavec-Merou
3983726a66
all devices: use spiFlash dump & verify
2021-07-11 11:34:14 +02:00
Gwenhael Goavec-Merou
f5254294eb
altera: add verify and dump
2021-07-11 11:32:35 +02:00
Gwenhael Goavec-Merou
b77c5a22df
spiFlash: add verify and dump method
2021-07-11 11:32:10 +02:00
Gwenhael Goavec-Merou
f19d0996a4
progressBar: limit resolution
2021-07-11 11:30:02 +02:00
Gwenhael Goavec-Merou
6639f0646a
board: pipistrello: add spi flash support
2021-07-11 08:58:40 +02:00
Gwenhael Goavec-Merou
c90a4b7734
altera: spi flash support for cycloneV and qmtech
2021-07-10 08:20:27 +02:00
Gwenhael Goavec-Merou
0c4aedcb23
altera: add spi flash support for de0nano (EP4CE22F17C6)
2021-07-09 07:40:55 +02:00