Commit Graph

170 Commits

Author SHA1 Message Date
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
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
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
d7b59cac59 Support for hardware breakpoints 2023-09-20 23:43:29 +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
1d0f30db7a New rangeSteppingEnabled server config param 2023-09-10 21:50:32 +01:00
Nav
b9a0c09adf Tweaked wording in GDB response to Insight activation request 2023-08-30 20:48:47 +01:00
Nav
1c12200c18 Do not respond to GDB's interrupt requests, if we failed to interrupt target execution 2023-08-30 20:47:11 +01:00
Nav
9faab27ad7 Updated invalid code references that were still using the old Bloom namespace. 2023-08-20 15:50:05 +01:00
Nav
9a6e22e6c7 Corrected member initialisation order (addressing -Wreorder warnings) 2023-08-19 21:53:00 +01:00
Nav
c622c9bd2e Fixed missing includes which were resulting in failed builds with GCC 13+. Thanks to @jpf91 for reporting 2023-08-19 17:12:40 +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
142f844f83 New TC shutdown command 2023-07-18 23:17:13 +01:00
Nav
9734ba88e1 Removed TC suspension 2023-07-18 23:17:13 +01:00
Nav
9475a80cd0 Removed TC state code from insight and debug server components 2023-07-18 23:17:13 +01:00
Nav
d55756da72 New GDB monitor command for Insight activation.
Created GdbHelpMonitorInfo.txt.in template for conditional commands
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