Commit Graph

660 Commits

Author SHA1 Message Date
Rafael Silva ad65f4a7c7 target/adi: remove superfluous ap_ prefix from ap variable 2022-07-31 12:09:07 +01:00
Rafael Silva 8238d3c020 target: rename target idcode 2022-07-31 12:09:07 +01:00
Rafael Silva 8e06539eb5 target/lp17xx: remove unnecessary check
this actually just checked that is was a DP designed by arm for probably a cortex M3 or M4
we already check for M3 afterwards, not very useful
2022-07-31 11:16:36 +01:00
Rafael Silva 07b8d9c285 target/efm32: remove unnecessary check 2022-07-31 11:16:36 +01:00
Rafael Silva 1286faff64 target/adi: correct raspberry jep code, cleanup dpidr/targetid code handling 2022-07-31 11:16:36 +01:00
Rafael Silva 58025feec2 target/adi: rename missleading idcode variable 2022-07-31 11:16:36 +01:00
Rafael Silva a9229a869b target/semihosting: move semihosting defines to its own header 2022-07-31 11:16:36 +01:00
Rafael Silva 73f3910f62 misc: code format & cleanup 2022-07-31 11:16:36 +01:00
dragonmux e6075d4bd3 ch32f1: Static correctness for for ch32f1_buffer_clear 2022-07-30 18:05:42 -07:00
dragonmux 7e7bc3789c ch32f1: Fixed the return type for ch32f1_flash_lock 2022-07-30 18:05:42 -07:00
dragonmux f548473f28 ch32f1: Fixed the return type for ch32f1_flash_unlock 2022-07-30 18:05:42 -07:00
dragonmux 9d43ade05c cortexm: Fixed the probing for LMI devices (both Cortex-M3 and Cortex-M4)
Other routines that were firing in front of lmi_probe were putting the devices into bad state and causing a plethora of issues
2022-07-30 18:04:07 -07:00
dragonmux a561e71fc3 lmi: Refactored out the device IDs as defines 2022-07-30 18:04:07 -07:00
dragonmux c6b833665b lmi: Cleaned up in lm3s_probe() 2022-07-30 18:04:07 -07:00
dragonmux 289aad6792 lmi: Added support for the LM3S8962 2022-07-30 18:04:07 -07:00
dragonmux f3f7253f00 lmi Added support for LM3S5732 2022-07-30 18:04:07 -07:00
dragonmux 20b973daa0 lmi: Corrected the LM3S3748 RAM and Flash regions as they were mis-sized 2022-07-30 18:04:07 -07:00
dragonmux 738b6c650f lmi: Refactored the probe code as it handles multiple device families and the structure should reflect that 2022-07-30 18:04:07 -07:00
dragonmux 75773631cb cortexm: Fixed a clang-tidy warning in the PROBE macro 2022-07-30 18:04:07 -07:00
dragonmux 08207b9af9 lmi: Added some more robustness to the probe routine 2022-07-30 18:04:07 -07:00
dragonmux d3c80f8b32 jtag_scan: Reordered jtag_dev_t to fix a clang-tidy warning about excessive padding 2022-07-30 18:00:08 -07:00
dragonmux a4ee80edfe jtag_scan: Cleaned up and reworked jtag_dev_shift_dr() 2022-07-30 18:00:08 -07:00
dragonmux 2eb19d4eb7 jtag_scan: Cleaned up and reworked jtag_dev_write_ir() 2022-07-30 18:00:08 -07:00
dragonmux 14dafdbf92 jtag_scan: Finished cleaning up in jtag_scan() 2022-07-30 18:00:08 -07:00
dragonmux 181e84cb0c jtag_scan: Adjusted the parameter and result types for jtag_scan(), jtag_add_device(), and related functions 2022-07-30 18:00:08 -07:00
dragonmux 36db97a57c jtag_scan: Cleaned up and reworked the BMDA integration and scan debugging information 2022-07-30 18:00:08 -07:00
dragonmux 8bf601a368 jtag_scan: Continued reworking jtag_scan() and switched jtag_dev_count to a uint32_t as it can't be negative 2022-07-30 18:00:08 -07:00
dragonmux 190c45b450 jtag_scan: Reworked IR length and device count scanning when irlens is not given 2022-07-30 18:00:08 -07:00
dragonmux 9f35763199 jtag_scan: Reworked and cleaned up how scan works when irlens is specified 2022-07-30 18:00:08 -07:00
dragonmux b258730499 jtag_scan: Turned the JTAG conformance hard errors into warnings 2022-07-30 18:00:08 -07:00
dragonmux 823634e609 command: Refactored and cleaned up command_process 2022-07-30 17:47:53 -07:00
dragonmux 84c004281d lpc11xx: Further cleanup in lpc11xx_add_flash 2022-07-30 16:59:38 -07:00
dragonmux af86d50bc2 lpc11xx: Moved the readuid command to where it makes more sense 2022-07-30 16:59:38 -07:00
dragonmux 3d1933a5a0 lpc11xx: Run clang-format across the code 2022-07-30 16:59:38 -07:00
dragonmux a9fff1e8a6 adiv5: Tidied up in adiv5_component_probe() 2022-07-30 16:43:43 -07:00
dragonmux ce37d4e833 adiv5: Fix some nomenclature in adiv5_dp_init() 2022-07-30 16:43:43 -07:00
dragonmux 733d8ddc19 adiv5: Fix the invalid AP handling loop so that we don't stop early and bail out before time.
This improves target detection reliability.
2022-07-30 16:43:43 -07:00
dragonmux 02b979d382 jtagtap: Added support for configurable TAP idle cycles ready for RISC-V support 2022-07-30 16:26:04 -07:00
grumat 5e9a974c42 Fixed compatibility issues with CH32F1 target driver and other STM32F103 clones. 2022-07-30 09:57:28 +01:00
ylm 4d64edad7a fix: Use standard macros for debug message formating 2022-07-29 21:22:17 +01:00
dragonmux 57fec4d0b6 adiv5: Cleaned up a couple of the debug prints 2022-07-29 21:22:17 +01:00
Rafael Silva 7c14b62419 target: fix probing for lpc1343 2022-07-26 05:14:30 +01:00
Rafael Silva bf30580330 target/adiv5: add missing include in hosted build
Signed-off-by: Rafael Silva <perigoso@riseup.net>
2022-07-26 05:08:10 +01:00
Rafael Silva 8b5206fb8d target: add weak aliasing to allow disabling targets
Signed-off-by: Rafael Silva <perigoso@riseup.net>
2022-07-26 05:08:10 +01:00
dragonmux 6f81cb6a68 adiv5: Removed an extraneous pair of perens as they suppress desirable warnings 2022-07-25 18:28:57 +01:00
dragonmux 3592658a26 adiv5: Cleaned up the loop in adiv5_ap_read_id 2022-07-25 18:28:57 +01:00
dragonmux bb3e74062e adiv5: Fixed the naming of a timeout in cortexm_prepare 2022-07-25 18:28:57 +01:00
Rafael Silva 013b2dee60 target/adiv5: further cleanup 2022-07-25 18:28:57 +01:00
Rafael Silva 0942d7047a target/adiv5: saner designer code handling and cleanup
Signed-off-by: Rafael Silva <rafaelsilva@ajtec.pt>
2022-07-25 18:28:57 +01:00
Rafael Silva d1fa50336e target/adiv5: clang format/tidy 2022-07-25 18:28:57 +01:00
dragonmux c530bd077b misc: Switched to using C11 2022-07-18 20:59:15 -07:00
dragonmux 10d30821e5 swdptap: Cleaned up the naming and and signatures of the SWDP implementation functions 2022-07-18 18:57:10 -07:00
dragonmux 85d24e8289 target: Implemented a command to allow erasing Flash ranges on any target 2022-07-18 17:12:13 -07:00
Giovanni Santana 1b8e522e87 nrf51: Add command to enable flash protection
Add braces for the while loop
2022-07-15 16:57:52 +01:00
Giovanni Santana 6ae846ae24 target/nrf51: Add command to enable flash protection
Add command `mon protect_flash`  to enable flash read/write protection
2022-07-15 16:57:52 +01:00
dragonmux 94b62ff924 target: Fixed several clang-tidy warnings which improve readability of the code 2022-07-14 16:19:43 -07:00
dragonmux bdf4dc8731 nrf51: Fixed mass erase after run then user interrupt (Ctrl + C) not working 2022-07-14 14:19:14 -07:00
dragonmux 5607eac812 cortexm: Cleaned up formatting, types and const-correctness in cortexm_attach 2022-07-14 14:19:14 -07:00
Rafael Silva 069f05ea4b target/efm32: stop hiding data in driver string
Signed-off-by: Rafael Silva <perigoso@riseup.net>
2022-07-14 13:11:19 +01:00
Rafael Silva 096927b0b8 target/efm32: bootloader lock word handling fix
Signed-off-by: Rafael Silva <perigoso@riseup.net>
2022-07-14 13:11:19 +01:00
Rafael Silva c2589bc39f target/efm32: mass erase correctness
Signed-off-by: Rafael Silva <perigoso@riseup.net>
2022-07-14 13:11:19 +01:00
Rafael Silva 00dd7f145f target/efm32: code cleanup
Signed-off-by: Rafael Silva <perigoso@riseup.net>
2022-07-14 13:11:19 +01:00
Rafael Silva 42d36d9d10 target/efm32: general formatting/style cleanup
Signed-off-by: Rafael Silva <perigoso@riseup.net>
2022-07-14 13:11:19 +01:00
Piotr Esden-Tempski 018fc517a1 stm32f4: Fixes erase_mass command return error.
The final erase_mass command check is looking for the EOP (End of
OPeration) bit to be set. This bit is only set when the EOP interrupts
(EOPIE = 1) are enabled. We are not enabling those on the target so this
bit will never get set. As we are monitoring the BSY flag to make sure
the erase_mass operation is still ongoing and finished it is enough if
we just check the error flags.
2022-07-13 20:57:09 -07:00
dragonmux 6d7c6c5daf lmi: Added progress dots for mass erase to stop GDB timing out 2022-07-13 19:34:57 -07:00
dragonmux d64992ade8 rp: Cleanup in how we define some of the Flash constants 2022-07-13 19:34:57 -07:00
dragonmux ce94169099 stm32l0: Added some links to the reference manuals 2022-07-13 19:34:57 -07:00
dragonmux a22d6e5056 stm32l0: Run clang-format across the code 2022-07-13 19:34:57 -07:00
dragonmux b84f883aeb lmi: Implemented mass erase 2022-07-13 19:34:57 -07:00
dragonmux 90b7362162 stm32l4: Switched to the unified mass erase command and added progress dots to stop GDB timing out 2022-07-13 19:34:57 -07:00
dragonmux 787d66fe95 stm32h7: Switched to the unified mass erase command, breaking up the implementation cleanly and added progress dots to stop GDB timing out 2022-07-13 19:34:57 -07:00
dragonmux 980a1f140c stm32g0: Switched to the unified mass erase command, breaking out the bank erase command and added progress dots to stop GDB timing out 2022-07-13 19:34:57 -07:00
dragonmux d82ad89715 stm32f4: Switched to the unified mass erase command and added progress dots to stop GDB timing out 2022-07-13 19:34:57 -07:00
dragonmux 2f0d35de19 samx5x: Bracket and GDB message cleanup 2022-07-13 19:34:57 -07:00
dragonmux 591f05d7e5 samd: Cleanup and fixed a notification TODO 2022-07-13 19:34:57 -07:00
dragonmux 94d5c0576b samd/samx5x: Switched to the unified mass erase command and added progress dots to stop GDB timing out 2022-07-13 19:34:57 -07:00
dragonmux e9b75ba4bc rp: Switched to the unified mass erase command and added progress dots to stop GDB timing out 2022-07-13 19:34:57 -07:00
dragonmux ffd358824f nrf51: Switched to the unified mass erase command for the recovery target and added progress dots to stop GDB timing out 2022-07-13 19:34:57 -07:00
dragonmux 57d8e8f5d9 nrf51: braces cleanup in nrf51_flash_erase 2022-07-13 19:34:57 -07:00
dragonmux ee694fcb75 nrf51: Switched to the unified mass erase command and added progress dots to stop GDB timing out 2022-07-13 19:34:57 -07:00
dragonmux 8130b62bcf lpc546xx: Switched to the unified mass erase command for the recovery target and added progress dots to stop GDB timing out 2022-07-13 19:34:57 -07:00
dragonmux 9af2d2a413 lpc: Clean up part of the lpc_iap_call command wait loop 2022-07-13 19:34:57 -07:00
dragonmux 56ecbb3b89 lpc43xx: Switched to the unified mass erase command and added progress dots to stop GDB timing out 2022-07-13 19:34:57 -07:00
dragonmux 6f57cdf6ba lpc17xx: Switched to the unified mass erase command and added progress dots to stop GDB timing out 2022-07-13 19:34:57 -07:00
dragonmux ae1cb56ce0 kinetis: Switched to the unified mass erase command for the recovery target and added progress dots to stop GDB timing out 2022-07-13 19:34:57 -07:00
dragonmux 9d46d0c5c6 target: Refactored out the progress printer to reduce Flash usage 2022-07-13 19:34:57 -07:00
dragonmux b8ca831cfb efm32: Switched to the unified mass erase command for the recovery target and added progress dots to stop GDB timing out 2022-07-13 19:34:57 -07:00
dragonmux c1758088cd efm32: Switched to the unified mass erase command and added progress dots to stop GDB timing out 2022-07-13 19:34:57 -07:00
dragonmux 17c04d585e stm32f1: Switched to the unified mass erase command and added progress dots to stop GDB timing out 2022-07-13 19:34:57 -07:00
dragonmux c2d72b4825 kinetis: Switched to the unified mass erase command and added progress dots to stop GDB timing out 2022-07-13 19:34:57 -07:00
dragonmux c35f65c6c0 target: Implemented a global target mass erase command 2022-07-13 19:34:57 -07:00
dragonmux 30e2106e40 target: Make the buffers used to program a target's Flash better bounded in lifetime and memory usage 2022-07-13 19:08:31 -07:00
Anti Sullin 3e9913e88b Implement semihosting debug output redirection to usb-uart port. 2022-07-13 18:49:20 -07:00
dragonmux 4bc68409f8 kinetis: Clean up how kl_gen_flash_done builds the command buffers to send to ensure the security byte is OK 2022-07-11 17:12:23 -07:00
dragonmux f0566979b0 kinetis: Fixed the flash write command generation for K64 devices 2022-07-11 17:12:23 -07:00
dragonmux 6f273cadd8 kinetis: Try to be safer about our FCCOB writes so the Flash controller's less likely to get mad 2022-07-11 17:12:23 -07:00
Rafael Silva 0c18fcefe3 kinetis: macro organization and clearer function naming
Signed-off-by: Rafael Silva <perigoso@riseup.net>
2022-07-09 15:55:37 -07:00
dragonmux 18a49ac853 kinetis: Run clang-format on the code 2022-07-09 15:45:06 -07:00
dragonmux 72e4f4d2b2 kinetis: Refactored out some common code from kinetis_probe for the S32K14 lineup 2022-07-09 15:45:06 -07:00
dragonmux fee6f28915 kinetis: General formatting and readability cleanup 2022-07-09 15:45:06 -07:00