Commit Graph

1242 Commits

Author SHA1 Message Date
Pieter du Preez d55cea871d Fixed overrun and formatting, when dumping data in swolisten.
The swolisten program failed to print the cbw buffer correctly while
in dump mode. As printf() is used to print the dump, it is expected
that the cbw buffer is zero-terminated, which would only be
the case, if the cbw buffer is initialized with zeros, before filling it
with new data. One could set the entire cbw buffer to zero, but it
will be more efficient to only set the size-th byte to zero.

Furthermore, if a '%' character appears in the data, printf() will
attempt to format it, causing unexpected results.

This patch fixes the above 2 problems, by:

1. using the size variable to set the size-th byte of the cbw
buffer to zero, before passing it to printf().

2. calling printf() with a "%s" formatting string, followed by the
data buffer, cbw.
2020-04-20 00:19:30 +02:00
Uwe Bonnes 164eb43f00 NRF5: Do not reset target options. 2020-04-14 19:01:43 +02:00
Uwe Bonnes bea8436561 NRF5: Always set CORTEXM_TOPT_INHIBIT_SRST(#230)
The problem also happens with NRF52840. Set CORTEXM_TOPT_INHIBIT_SRST
for all NRF5 device.
People should be more persistent!
2020-04-14 18:11:23 +02:00
mean d1468530bd add basic support for LPC11U68 (and maybe LPC11U68) 2020-04-06 23:36:49 +02:00
Francesco Valla 846dadcc39 lmi: add support for TM4C1294NCPDT 2020-04-03 19:42:24 +02:00
Uwe Bonnes 58a8571d5b stlink: Print Target voltage
This adds about 600 bytes.
2020-04-03 16:19:20 +02:00
Francesco Valla 8a9980cd06 pc/serial_unix: bump device path buffer size to 4096 bytes
Since dp->d_name can be up to 255 bytes long and the 'name' buffer variable is
is a superset of it, bump the size of the latter to 4096 bytes (correspoding
to PATH_MAX on Linux systems).
2020-04-03 11:05:11 +02:00
Uwe Bonnes b4ab9f328e pc-hosted: Put serial handling in own files for unix and implement for windows.
- If host provided /dev/serial/by-id, device must not be given and
  multiple devices may be selected with -s <(partial) serial number>
- On windows, device must by specifies with -d
2020-03-31 17:02:56 +02:00
Uwe Bonnes 18ae2bb50d cl_utils.c: Include <windows.h> for windows builds that work on files. 2020-03-31 17:02:56 +02:00
Uwe Bonnes 1a0cee4e9d pc-hosted: Clean up Makefile.inc. 2020-03-31 17:02:56 +02:00
Uwe Bonnes bd73adf9c7 bmp/pc platforms: Deduplicate code. 2020-03-31 17:02:56 +02:00
Uwe Bonnes 9ca401497c stm32/timing_stm32.c: Remove fixed constants and direct SCB access 2020-03-31 16:54:04 +02:00
Uwe Bonnes c4d7232223 Export function to read out PIDR and use for samd and samx5x. 2020-03-26 19:05:57 +01:00
Uwe Bonnes a0e42e229b Make more things static.
No functional change intendend.
2020-03-26 18:44:19 +01:00
Uwe Bonnes eca3a8dd8f pc-stlinkv2: Make stlink_usb_get_rw_status static and allow to suppress errors
This helps to not overflow the console.
2020-03-26 17:56:12 +01:00
Uwe Bonnes 91d7656d86 stlink/bootloader: Really allow to detach.
- To reenumerate, rcc_periph_reset_pulse(RST_USB) seems enough.
- Document bootloader entry and exit behaviour of ST-LINK V2
- Document bootloader entry on ST-LINK V2-1
2020-03-26 17:15:32 +01:00
Uwe Bonnes 890b494290 pc-stlinkv2: Update README.md 2020-03-26 12:21:22 +01:00
Uwe Bonnes effd43ce38 Harden cortexm_reset() and remove double reset(#601)
Thanks to Dave Marples <dave@marples.net> for input.
- Issue only one reset. Start with SRST. Only if not seen, use SYSRESETREQ
- Wait for release of DHCSR_S_RESET_ST before issuing more commands
- Add timeout to catch reset line stuck low
- Remove AP errors
2020-03-25 11:22:14 +01:00
Uwe Bonnes bc84d803ea libopencm3: Update to Head March 25 2020 to ease windows compilation #394
Last libopencm3 upgrade resulted in problems for libopencm3 build on
windows. Cross-mingw builds where no affected. Recent changes of
libopencm3 seem unrelated to libopencm3 functionality used by BMP
2020-03-25 11:04:01 +01:00
Uwe Bonnes 2e185ba578 BMP/PC: Allow to compile with mingw64 (#615)
__USE_MINGW_ANSI_STDIO 1 must be set befor any windows specific included.
2020-03-24 17:59:13 +01:00
Uwe Bonnes e57792c95e stm32_mem: Check file size before flashing(#614)
stm32mem is only meant to flash BMP to a STM32F103x(8|B). No need to
decipher the DFU interface string.
2020-03-22 16:40:06 +01:00
Uwe Bonnes 2b76ec0ea3 dfucore: Reject erase outside the allowed range
An illegal erase request may get emitted as the DFU program may erase
first. Checking before flashing is not enough.
2020-03-22 16:38:54 +01:00
Uwe Bonnes a7efe7cc14 cl-utils: Display targets found.
+ other small changes in DEBUG output.
2020-03-10 17:34:30 +01:00
Uwe Bonnes 65cb886bb6 Export connect_under_reset. 2020-03-10 11:44:53 +01:00
Uwe Bonnes 2065c70888 adiv5: Split PRIx64 into two PRIx32 as nanolib does not support PRIx64. 2020-03-10 10:56:42 +01:00
Uwe Bonnes 75186f7d50 ADIv5: More CoreSight device decoding:
- MTB-M0+ (Simple Execution  Trace)
- M33: Devices need finer decoding (DEVTYPE at offset 0xfcc)
2020-03-08 22:37:59 +01:00
Uwe Bonnes c7e7bd61b6 stlink: Do not wait for the reaction on the reset line.
pc-hosted will abort, if the reset line is held externally to some value.
As assert is either driven or driven open drain, we can assume assert
immediate. For deassert, logic levels differences between the debugger and
the debuggee may apply and other ways to check the result are needed, like
CORTEXM_DHCSR_S_RESET_ST.
2020-03-08 16:27:03 +01:00
Uwe Bonnes e48d9ebc92 cl_utils: Allow to connect under reset. 2020-03-06 23:15:56 +01:00
Uwe Bonnes 919d9320fd Remove unrelated files. 2020-03-06 19:33:20 +01:00
Uwe Bonnes 05dc2e239e pc-hosted: Disable TPWR when blackmagic command line interaction terminates. 2020-03-06 17:16:33 +01:00
Extreme kefir c94a03af48 STM32F1 High density devices DFU support(#587) 2020-03-05 19:58:55 +01:00
Uwe Bonnes 288620551f adiv5: Print out SYSROM PIDR.
We need to know more about what devices indicate proper PIDR and what
devices fail to do so.
2020-03-04 19:02:07 +01:00
Uwe Bonnes 8c959defca efm32: Make local functions static. 2020-03-04 18:44:40 +01:00
Uwe Bonnes 13b9fe1efc cl_utils: There is no need for a (dummy) target controller.
Fix for #593.
2020-03-04 16:57:05 +01:00
Uwe Bonnes 03d84d0d5c command line tools: Allow to set power. 2020-02-20 12:12:26 +01:00
zvova7890 7a595ead25 fixup F103x8 flash size before build dfu iface string
we handle F103x8 as F103xB with 128k flash
2020-01-22 16:01:39 +01:00
Uwe Bonnes 45fb12f9b6 cl-utils: Care for -j (JTAG) argument in test mode. 2020-01-21 11:49:45 +01:00
Sid Price 1a1cabc90b Remove explicit include of rcc.h and allow common file to steer the right file
Clean up DFU files with MCU explicit includes
2020-01-14 00:09:20 +01:00
Ondrej Mikle 2137e775a4 stlink: update docs on how ti reflash BMP back to STLink original firmware (#572)
* stlink: update docs on how ti reflash BMP back to STLink original firmware

* stlink: specify v2 in docs on reflashing back
2020-01-11 16:52:22 +01:00
Sid Price ee553c9a50 Corrected error checking for socket functions (#577) 2020-01-11 16:47:02 +01:00
Uwe Bonnes c3a3f7737f Hosted: Allow command line interaction. 2019-12-13 14:59:42 +01:00
Uwe Bonnes ee316431f5 stlink for st-bootloader: Reset with platform_request_boot()
Both V2 and V21 switch to (ST) bootloader with powered reset.
2019-12-13 14:59:42 +01:00
Uwe Bonnes 470c8e8cf1 target_flash_erase: Do not crash when requesting erase of unavailable flash.
Allow to erase from command line.
2019-12-13 14:59:42 +01:00
Uwe Bonnes b9eb467ecf Command line: Restrict verify to length of binary file. 2019-12-13 14:59:42 +01:00
Uwe Bonnes 269d38ce65 cl_utils: Allow to issue reset.
Issue reset only when flashing or when reset was requested.
2019-12-13 14:59:42 +01:00
UweBonnes 0b6f393d5b
Merge pull request #561 from UweBonnes/pc_prog
Command line interaction for pc-hosted platforms.
2019-12-08 16:57:58 +01:00
Uwe Bonnes da5a0cd3f5 Infrastructure for command line interface to target
- Program, read and verify flash
- Test mode: Probe and attach to device and exit
2019-12-08 16:43:19 +01:00
Uwe Bonnes ab396f9745 Allow %z specifier in windows builds. Supercedes #562. 2019-12-08 16:43:19 +01:00
Uwe Bonnes 1bef51e145 adiv5: Abort scanning APs after 8 void APs. 2019-12-08 16:43:19 +01:00
Uwe Bonnes 6d01c3c55b stlinkv2: Propagate AP errors
Needed when reading some memory region of unknown size.
2019-12-08 16:43:19 +01:00