Commit Graph

204 Commits

Author SHA1 Message Date
Nav
2580cecb26 Handle mapped program memory segment aliasing properly, on WCH RISC-V targets
- Added `program_segment_key` target config param, to allow the user to specify the desired program memory segment
- Added the ability to resolve the currently aliased segment, by means of probing the mapped segment
- Added program counter transformation, when the mapped segment is aliasing a foreign segment
- Other bites of tidying
2024-12-14 02:09:25 +00:00
Nav
00919e4057 WCH-Link erase command doesn't erase the whole chip, as initially thought. It only erases the program memory segment.
The boot segment appears to be left untouched.
2024-12-13 22:48:20 +00:00
Nav
1477719264 Tidying 2024-12-07 16:48:06 +00:00
Nav
289919f330 Tidying 2024-12-05 23:11:31 +00:00
Nav
9f945a8d79 Fixed bug where the RISC-V target's program counter was being excluded from the response to the ReadRegisters GDB command 2024-12-05 23:10:04 +00:00
Nav
33ed399337 WCH RISC-V software breakpoints, and a few other bits of refactoring/tidying 2024-12-05 23:09:01 +00:00
Nav
8e86cfb152 Tidying 2024-11-28 21:49:03 +00:00
Nav
9c1b194af1 Changed all bloom.yaml config keys/values to use snake_casing 2024-11-28 21:44:04 +00:00
Nav
282086eaa2 Tidied exceptions 2024-11-23 21:09:33 +00:00
Nav
a574fe3461 Tidying 2024-11-17 18:19:11 +00:00
Nav
eebba986b5 RISC-V GDB server 2024-11-16 20:43:22 +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
4f166cc7d7 Tidying 2024-10-27 00:27:16 +01:00
Nav
e7b270a30c Corrected bug in GDB server config (IP address param wasn't being validated properly) 2024-10-27 00:27:04 +01: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
1db70be31e Move AVR-specific GDB memory address translation to AvrGdbTargetDescriptor 2024-10-26 17:18:42 +01:00
Nav
b6cbdf5a0d Changed AVR-GDB command packet class to a bare interface class 2024-10-26 16:19:05 +01:00
Nav
5be3ab4503 Tidying 2024-10-25 23:12:31 +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
4e28d3c488 Present register width as opposed to register byte size in new register access GDB monitor commands 2024-10-20 00:23:00 +01:00
Nav
a65be393be Tidying 2024-10-19 23:11:22 +01:00
Nav
7a54632966 Implemented disabling of GDB packet acknowledgement, and disabled it by default. The new packetAcknowledgement debug server config param can be used to keep it enabled. 2024-10-19 23:10:34 +01:00
Nav
d21afc47f4 Removed null byte from empty response packet in GDB server 2024-10-05 14:46:09 +01:00
Nav
cb35051e6d Tweak to help text for GDB monitor commands 2024-08-29 21:21:38 +01:00
Nav
48bd656b6d Handle bad conversion in wr GDB monitor command handler 2024-08-28 19:24:41 +01:00
Nav
609400b375 Tweaks to help text for GDB monitor commands 2024-08-28 19:10:47 +01:00
Nav
a6d79e4680 Accept 0x prefix in eeprom fill GDB monitor command 2024-08-28 19:02:23 +01:00
Nav
3b91b99fe3 Added help text for new wr GDB mintor command. Also some small tweaks to other help text 2024-08-27 22:24:22 +01:00
Nav
338dd8b75b New wr GDB monitor command, for writing to target registers 2024-08-27 22:05:34 +01:00
Nav
b1db8196c0 Tidying 2024-08-27 22:04:59 +01:00
Nav
7bcb81b7c8 Tidying 2024-08-27 00:20:22 +01:00
Nav
ff5b387ef5 Second pass at GDB monitor help command handler refactor.
Also added help text for the new `lr` and `rr` commands.
2024-08-26 23:14:35 +01:00
Nav
e1216b7cc0 Tidying 2024-08-26 21:34:29 +01:00
Nav
1ef9ee7297 Refactored GDB monitor help command handler 2024-08-26 21:33:51 +01:00
Nav
cb9059c691 Tidying 2024-08-26 12:42:04 +01:00
Nav
2adb679833 New mon lr GDB command, for listing target registers 2024-08-26 12:41:41 +01:00
Nav
a7ffc56d9b New mon rr GDB command for reading target registers 2024-08-26 12:40:39 +01:00
Nav
4c47bda7b3 New PartialResponsePacket class for delivering partial responses to GDB 2024-08-26 12:37:41 +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
41a6e0bbbd Tidying 2023-12-12 23:25:29 +00:00
Nav
d3c7cddb82 Added TargetFamily to TargetDescriptor and comparability check in AVR GDB debug server 2023-11-22 00:37:29 +00:00
Nav
a6d1a8ffea Included current PC in GDB reset command response (which is presented to the user) 2023-10-02 19:40:05 +01:00
Nav
dce6d778a8 Enable range stepping by default 2023-09-23 23:06:03 +01: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
24ce9aeacb Disable range stepping by default 2023-09-22 16:51:24 +01:00