Commit Graph

63 Commits

Author SHA1 Message Date
Nav
33ed399337 WCH RISC-V software breakpoints, and a few other bits of refactoring/tidying 2024-12-05 23:09:01 +00:00
Nav
8f61c5a839 Handled flash erase without subsequent flash write commands, in AVR GDB server 2024-11-16 18:54:28 +00:00
Nav
e82d59d190 Tidying 2024-10-26 19:27:16 +01:00
Nav
08af052ba9 Corrected bug in AVR GDB memory access command handlers, which allowed GDB to perform out-of-bounds accesses 2024-10-26 19:26:56 +01:00
Nav
8cf96ba5df Tidying 2024-10-26 17:19:00 +01:00
Nav
b6cbdf5a0d Changed AVR-GDB command packet class to a bare interface class 2024-10-26 16:19:05 +01:00
Nav
9df41ccfc5 Made VCont step/continue command handlers generic (non-target-specific) 2024-10-25 23:12:04 +01:00
Nav
8be311cbc0 Refactored GDB server base class, making it a template class, allowing for much more flexibility for derived target-specific implementations 2024-10-25 22:22:25 +01:00
Nav
a6d79e4680 Accept 0x prefix in eeprom fill GDB monitor command 2024-08-28 19:02:23 +01:00
Nav
34b26c3d06 Replaced commandOptions member with commandArguments in the GDB Monitor command base class
Updated the `eeprom fill` monitor command to take the fill value from the third command argument.
Also updated help text
2024-08-24 20:43:29 +01:00
Nav
6cdbfbe950 Massive refactor to accommodate RISC-V targets
- Refactored entire codebase (excluding the Insight component) to accommodate multiple target architectures (no longer specific to AVR)
- Deleted 'generate SVD' GDB monitor command - I will eventually move this functionality to the Bloom website
- Added unit size property to address spaces
- Many other changes which I couldn't be bothered to describe here
2024-07-23 21:14:22 +01:00
Nav
75d5124265 Moved TargetRegisterDescriptor struct to separate file 2024-03-09 17:16:29 +00:00
Nav
ed3ddbe3fd Removed intercepting breakpoint on end address of a stepping range. Replaced with runTo operation 2023-09-23 21:51:09 +01:00
Nav
b5df37ae9b Removed TargetProgramCounter type alias 2023-09-21 00:40:30 +01:00
Nav
611ad70d6b Renaming rangeSteppingEnabled GDB server config param to rangeStepping 2023-09-21 00:30:21 +01:00
Nav
df5a141089 Tidying 2023-09-20 23:29:58 +01:00
Nav
be5e89456c Fall back to single stepping if address range from GDB is less than one word. 2023-09-16 03:06:18 +01:00
Nav
4348a6d88c Corrected handling of empty address range in range step GDB command 2023-09-11 16:57:14 +01:00
Nav
008f5bb62e When range stepping, start with a single step, as expected by GDB 2023-09-11 16:56:37 +01:00
Nav
7d4ce1050f - Implemented support for range stepping with GDB (vCont... packets)
- Refactored some bits of the generic GDB server class, along with the AVR-specific implementation
2023-09-11 03:32:58 +01:00
Nav
5896306f1a Removed redundant 'Bloom' namespace from entire codebase 2023-08-13 15:47:51 +01:00
Nav
9f3761879a Used TC atomic session in GDB ReadRegisters handler, to prevent Insight causing delays in the GDB session. 2023-07-18 23:17:13 +01:00
Nav
ba03833325 Lots of tidying
- Removed generic `avr8` target
- Simplified AVR8 target construction
- Introduced register descriptor IDs
- Simplified GDB register mappings
- Simplified target interface contract
- Other bits of tidying
2023-07-18 23:16:06 +01:00
Nav
61d608989d Changed GDB "Handling..." logs to INFO level 2023-05-07 20:17:33 +01:00
Nav
f37f8f301a Corrected bad rebase 2023-02-27 00:08:01 +00:00
Nav
7aa1639df2 Tidying 2023-02-20 21:55:55 +00:00
Nav
d353b55f9b Renamed TargetControllerConsole to TargetControllerService 2023-02-20 21:55:55 +00:00
Nav
6b4d3ecb26 Moved toHex functions to String helper class 2023-01-21 13:37:56 +00:00
Nav
76a0207701 Added EraseTargetMemory TC command 2022-12-11 23:25:15 +00:00
Nav
deec72d168 Convert relative EEPROM addresses to absolute addresses in GDB memory access command packet handlers. 2022-12-11 15:26:14 +00:00
Nav
304e2ab7c6 Tidying 2022-12-08 21:26:56 +00:00
Nav
831021eb36 Adjusted GDB memory map to include EEPROM in ram section. Also added EEPROM offset to the AVR GDB target descriptor 2022-12-08 21:18:04 +00:00
Nav
b3fb3f0955 Lots of tidying 2022-12-03 22:16:21 +00:00
Nav
c299f282ca More tidying 2022-10-28 23:31:16 +01:00
Nav
fbe22b72ed Tidying 2022-10-25 21:28:16 +01:00
Nav
065a389dfe Improved naming consistency of aliases 2022-10-01 21:01:37 +01:00
Nav
c7af236646 Tidied logs 2022-09-24 18:35:58 +01:00
Nav
4b7054070d Improved logging in FlashDone packet handler 2022-09-17 20:22:39 +01:00
Nav
0b54a1b590 Tidying 2022-09-17 20:16:23 +01:00
Nav
8e9d114343 Reset target after GDB programming session 2022-09-17 20:15:53 +01:00
Nav
18fb3b56ce Grouped the buffers from GDB's flash write packets so that we only flush once we have the full buffer.
This fixes an issue with GDB programming, where it was sending misaligned buffers and program memory
wasn't being properly updated.
2022-09-17 20:12:26 +01:00
Nav
46d8ce1854 Added TargetMemoryAddress, TargetMemorySize, TargetProgramCounter and TargetStackPointer aliases 2022-09-06 17:16:49 +01:00
Nav
2ae3786130 Removed MemoryAccessCommandPacket class and moved GDB memory offsets to GDB TargetDescriptor class 2022-08-30 02:04:40 +01:00
Nav
40b1183f6b Moved vFlashDone GDB command packet handelr to separate class 2022-06-05 16:15:12 +01:00
Nav
9b8d4f054b Enabled programming mode in response to GDB's vFlashErase and vFlashWrite packets 2022-06-05 16:14:14 +01:00
Nav
eaa34ef2af Removed flash memory write restriction for AVR GDB write memory command packet 2022-05-29 18:35:50 +01:00
Nav
71fe9e66fe Tidying 2022-05-29 17:19:06 +01:00
Nav
1a541dcd17 Support for vFlashWrite GDB command packet 2022-05-29 17:18:29 +01:00
Nav
9bf0e30de8 Support for vFlashErase GDB command packet 2022-05-28 22:47:25 +01:00
Nav
ead657b4af Tidying 2022-05-15 12:05:46 +01:00