UweBonnes
96bec7e3fb
Merge pull request #868 from UweBonnes/fixes
...
Revert "cmsis_dap: Always write full reportsize + 1 buffers"
2021-04-25 23:14:34 +02:00
Uwe Bonnes
877a6e694c
Revert "cmsis_dap: Always write full reportsize + 1 buffers"
...
This reverts commit 61e237ec87
.
This makes a CMSIS-DAP probe with version < 1.2 work again on DP V1 devices.
Status of other combination unknown:
DP V1 V2 V2/Multidrop
Probe
< 1.2 ok ok --
>= 1.2 ? ? ?
2021-04-25 22:53:40 +02:00
UweBonnes
da2fb7f210
Merge pull request #867 from UweBonnes/clean-static-from_probe
...
Clean static from probe
Some target probe functions used static RAM variables. This will fail if several of the same targets are in the JTAG/SWD chain and unnecessary remove RAM form the RAM pool if the target is not used. If the target needs more than one word, it allocated priv_storage is used. For a single needed word, one word has been added to the target structure as a union to allow decent naming.
2021-04-25 16:25:19 +02:00
Uwe Bonnes
1f67bab475
nxpke04: Move unsafe_enables to target bool union.
2021-04-25 16:03:23 +02:00
Uwe Bonnes
f87dff8d83
kinetis: Remove static variables, add word union to target_s.
...
Add a word union to target structure to hold a single word variable.
2021-04-25 16:03:23 +02:00
Uwe Bonnes
ac7c1057cc
efm32/samd/samx5x: Remove static allocates strings. Allocate in priv_storage.
...
Static allocated variables in the different targets eat up common RAM and
will collide in chains with multiple similar targets.
2021-04-25 16:03:23 +02:00
Uwe Bonnes
cddf02f174
samx5: Verbose error reports on protected devices.
2021-04-25 16:03:23 +02:00
Uwe Bonnes
8c8aa980cf
adiv5: Detect unprotected SAMD5x only once
2021-04-25 16:02:20 +02:00
Uwe Bonnes
f98b7274b4
hosted/stlinkv3: Detect STlinkV3 in bootloader mode.
2021-04-25 16:02:20 +02:00
Uwe Bonnes
a83700d1cf
stm32/usbuart: DMA stream handling is not STM32F4 specific
2021-04-25 16:02:20 +02:00
Uwe Bonnes
1330288271
firmware: Unify serial number handling
...
Use one file in dfu and server
For STM32, provide 3 ways to handle
- BMP way (8 bytes)
- DFU way (12 Bytes)
- Full unique id (24 Bytes), as with STLINK(V3) Bootloader
2021-04-25 16:02:20 +02:00
UweBonnes
8da2dee0c4
Merge pull request #857 from UweBonnes/rp
...
Support the Raspberry Pico RP2040
Implement multi-drop
Recognize , erase, flash and usb_reset
Attach to the rescue DP will reset but attach itself fails.
2021-04-25 15:48:35 +02:00
Uwe Bonnes
1b26ff560d
rp.c: Add reset_usb_boot as monitor command
2021-04-24 14:48:58 +02:00
Uwe Bonnes
52bffa70cf
rp: Handle flash.
...
- Beware, after reset, only a valid flash payload get mapped to XIP!
Only 0 is read from flash when flash image is not valid
2021-04-21 21:55:03 +02:00
Uwe Bonnes
2b0e255c40
cortexm: timeout and debug for run_stub()
2021-04-21 21:50:38 +02:00
Uwe Bonnes
61efe26348
swdp_scan: Break infinite loop after Dormant->SWD transition.
2021-04-21 21:50:38 +02:00
Uwe Bonnes
fa5e69e3be
RP 2040: Special handling for rescue DP
...
As the rescue DP provided no AP, trigger the reset with attach().
However attach will indicate failure also reset/halt has succeeded.
2021-04-21 21:50:38 +02:00
Uwe Bonnes
ea92c8b8c8
cmsis-dap: Allow to use adiv5_swdp_scan.
2021-04-21 21:50:38 +02:00
Uwe Bonnes
23f942ac8c
Raspberry RP2040: Recognize. No flash handling yet.
2021-04-21 21:50:35 +02:00
Uwe Bonnes
04d1c9805b
swd: Remove swd_proc and swdptap.h.
2021-04-21 21:50:04 +02:00
Uwe Bonnes
b6fbf86743
Extend ADIv5_DP_t for low level routines needed for multi-drop.
...
Will replace swd_proc
2021-04-21 21:50:04 +02:00
Uwe Bonnes
61e237ec87
cmsis_dap: Always write full reportsize + 1 buffers
...
Expect short reads and other errors else
2021-04-21 21:50:04 +02:00
Uwe Bonnes
d6ade4d94e
cmsis-dap: Use SWD_SEQUENCE if available.
2021-04-21 21:50:04 +02:00
Uwe Bonnes
5abb288c7a
hosted: Provide the DP functions in swd_proc.
2021-04-21 21:50:04 +02:00
Uwe Bonnes
fa561c8d66
adiv5_swdp: Starting point to handle multi-drop
...
- RP2040 show both DPs
- Multidrop test with STM32L552 and STM32H745 allows selection
with "-m 0x4500041" (H7), "-m 1" (L552) or "-m 0x01002927" (RP2040)
2021-04-21 21:50:04 +02:00
Uwe Bonnes
be3bfc48a8
cortexm: M33 has up to 8 hardware breakpoints
2021-04-21 21:22:59 +02:00
Uwe Bonnes
65f08cd46d
README.md(top): Mention hosted build for BMP only.
2021-04-21 21:22:59 +02:00
Uwe Bonnes
b1ac4187b9
Fix some formatting strings for 32-bit compile
2021-04-21 21:22:59 +02:00
Uwe Bonnes
637d76b585
cl_utils.c: Try jtag scan if swd scan did not give results.
2021-04-21 21:22:59 +02:00
Uwe Bonnes
5288eef617
cl_utils: With no size given, read the size of the lowest block.
2021-04-20 18:48:27 +02:00
Fabio Baltieri
beaccf2714
target: stm32l4: add support for STM32WLxx
...
This adds support for the STM32WL series in stm32l4.c. These parts have
the same flash registers layout as the L4 series, but a different base.
Since there are already two sets of registers in this target file, this
adds support for register maps that can be customized for each device
ID.
2021-04-20 18:42:36 +02:00
Uwe Bonnes
21b80949ff
Compile with -Os as default. Change like "make OPT_FLAGS=..."
...
SWD/JTAG Bitbang is compiled with -O3 for good bitbang speed.
2021-04-20 18:20:41 +02:00
Fabio Baltieri
f55ad67b1b
adiv5: catch timeout on adiv5_ap_read_id and abort
...
This adds a TRY_CATCH around the adiv5_ap_read_id() in
adiv5_component_probe() and resets the DP when that happens.
It seems like the STM32WLE5 comes with the AP of the inactive core
enabled in a way that does not make it detectable, and the current code
times out and leaves the whole device hanging.
Catching the timeout and calling adiv5_dp_abort() seems to restore the
device to a useable state.
Tested on Seed LoRa-E5 (STM32E5JC).
2021-04-19 16:57:13 +02:00
Vestrel
806787529f
Use DMA for USBUSART TX/RX
2021-04-17 17:57:08 +02:00
Uwe Bonnes
cf5b4afb38
bmp_serial/linux: Honor opt_list_only (-l).
2021-04-17 16:19:57 +02:00
fabalthazar
d6b24c00c8
Fixed STM32G43x/G44x option bytes support
...
Previously took L4 values so FLASH_SEC1R was not applied
2021-04-17 14:44:30 +02:00
fabalthazar
99f9557cc0
Support for STM32G49x/G4Ax (category 4)
2021-04-17 14:44:30 +02:00
fabalthazar
c85c946ce3
PRIx32 fix
2021-04-17 14:44:30 +02:00
Stoyan Shopov
9ec7d05d8d
Put null terminating characters when scanning for BMP probes on linux
...
This patch puts null terminating characters for the 'type',
'version', and 'serial' strings extracted from blackmagic probe
id strings on linux systems.
2021-04-17 14:41:28 +02:00
Uwe Bonnes
2d293ec755
travis: Use bionic instead of trusty.
...
No more need to compile libftdi1.
2021-04-17 13:35:21 +02:00
Uwe Bonnes
299da8627c
libftdi: Remove unneeded explicit path.
2021-04-17 13:35:21 +02:00
Uwe Bonnes
a6a8606edb
STM32L55: Detect, memory map, read and flash write. Options handling missing.
...
Only non-secure states considered!
2021-04-04 17:26:31 +02:00
UweBonnes
db17f2caa8
Merge pull request #847 from fabalthazar/bugfix-845-hosted_verify
...
Bugfix 845 - hosted verify right after programming
2021-04-02 16:23:50 +02:00
fabalthazar
739941dc5f
Verify right after programming
2021-03-31 13:06:52 +02:00
fabalthazar
2982888b66
BMP_MODE_FLASH_WRITE_VERIFY combined operation
2021-03-31 12:07:53 +02:00
fabalthazar
f85c54be97
Prepared -w option
2021-03-31 12:07:53 +02:00
fabalthazar
6d6cfd6c98
Comprehensive STM32G03/4/5/6/7/8/B/C driver
2021-03-29 21:42:40 +02:00
UweBonnes
fb8492a7e5
Merge pull request #846 from UweBonnes/cortexm_halt
...
Cortexm halt
2021-03-26 20:38:31 +01:00
Uwe Bonnes
58f153e12b
cortexm: Always halt and release reset before romtable scan
...
Only release from halt once after romtable scan
Should fix #836 .
2021-03-26 17:43:11 +01:00
Uwe Bonnes
a025c9a7bd
Revert "stm32f1: On ST parts there is no need to read IDCODE again."
...
Romtable partno is not unique for devices, e.g. in STM32F0
This reverts commit f89b07d892
.
2021-03-26 17:35:00 +01:00