Commit Graph

53 Commits

Author SHA1 Message Date
Nav
607a344107 Made TargetMemoryCache use TargetMemorySegmentDescriptor, as the base memory descriptor (instead of TargetMemoryAddressSpaceDescriptor).
Basing the memory cache on address spaces will result in large amounts of memory being unnecessarily reserved for large address spaces.
2024-10-07 00:14:39 +01:00
Nav
c662e946ca Updated application to code to accomodate changes to TDF format (new pad elements and changes to variant elements) 2024-08-16 23:02:35 +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
4aa8ed30de - Renamed build script for brief target descriptor generation
- Created new TargetService class
- Moved brief target descriptor mapping to new TargetService class
- Replaced CMake custom commands with custom targets, for TDF validation and brief target descriptor generation build scripts
- Moved BriefTargetDescriptor into separate header file
2024-03-02 01:59:55 +00:00
Nav
66cbd89051 - Refactored AVR8 constructor, moving TDF construction to the TargetControllerComponent
- The `TargetControllerComponent` now resolves the target via the new generated mapping approach
- Added `TargetDescriptionFile` derived class
- Removed obsolete JSON map processing code
- Other bits of refactoring and tidying
2023-12-17 18:40:52 +00:00
Nav
8c2fe4e619 Tidying 2023-09-22 17:52:38 +01:00
Nav
b38872e837 Program memory cache 2023-09-22 17:52:28 +01:00
Nav
d7b59cac59 Support for hardware breakpoints 2023-09-20 23:43:29 +01:00
Nav
5896306f1a Removed redundant 'Bloom' namespace from entire codebase 2023-08-13 15:47:51 +01:00
Nav
80cf6930cc Refactored template class for synchronised resources 2023-07-18 23:17:13 +01:00
Nav
30936fe0a2 Added atomic sessions in TC 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
4485ee0961 Used std::atomic for ThreadState 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
d6cd5da1b8 Binned udev rule check in TargetController 2023-01-18 00:41:23 +00:00
Nav
529438b9e4 Tidying 2022-12-17 14:46:08 +00:00
Nav
a1defa02c0 Pass the TargetDescriptor by const-reference where we can 2022-12-17 14:41:52 +00:00
Nav
76a0207701 Added EraseTargetMemory TC command 2022-12-11 23:25:15 +00:00
Nav
98963ef4a8 New resume & suspend TargetController commands 2022-09-14 22:05:50 +01:00
Nav
46d8ce1854 Added TargetMemoryAddress, TargetMemorySize, TargetProgramCounter and TargetStackPointer aliases 2022-09-06 17:16:49 +01:00
Nav
6c436cbefc Tidying 2022-08-27 17:56:55 +01:00
Nav
c4bcf71424 Replaced static TargetController state object access with new GetState command
This corrects a bug where the DebugServer checks if the TargetController is in
service just before it's about to suspend. The DebugServer then attempts to start
a new debug session, only for the TargetController to go into a suspended state.
A fatal error occurs and a shutdown follows. This bug is only apparent when
the user stops and starts debug sessions very quickly, with releasePostDebugSession
set to true.
2022-08-14 17:44:52 +01:00
Nav
cfe533e5db Introduced concept of programming mode 2022-06-05 16:13:43 +01:00
Nav
d0ca05f9e9 Tidying 2022-05-02 13:38:03 +01:00
Nav
17daa5fbb9 Tidied TargetControllerComponent class 2022-05-01 19:29:32 +01:00
Nav
fe846e0d7c Renamed SetProgramCounter TC command to SetTargetProgramCounter 2022-05-01 18:47:57 +01:00
Nav
4209d9eb20 New GetTargetProgramCounter TC command 2022-05-01 18:46:57 +01:00
Nav
96cae9d1e4 Replaced ExtractTargetDescriptor event with TC command 2022-05-01 18:32:54 +01:00
Nav
d8af8fe1ee Replaced RetrieveStackPointerFromTarget event with TC command 2022-05-01 18:06:21 +01:00
Nav
1072534809 Replaced SetTargetPinState event with TC command 2022-05-01 17:33:09 +01:00
Nav
870c4ba3d7 Replaced RetrieveTargetPinStates event with TC command 2022-05-01 00:07:12 +01:00
Nav
7c4e39dd03 Replaced SetProgramCounterOnTarget event with TC command 2022-04-30 23:10:07 +01:00
Nav
acc96fd6d1 Replaced RemoveBreakpointOnTarget event with TC command 2022-04-30 22:45:46 +01:00
Nav
f7619f475b Replaced SetBreakpointOnTarget event with TC command 2022-04-30 22:03:28 +01:00
Nav
ffc27a567b Replaced WriteMemoryToTarget event with TC command 2022-04-30 01:30:57 +01:00
Nav
76e189162e Replaced StepTargetExecution event with TC command 2022-04-29 22:12:09 +01:00
Nav
fa037a81b1 Replaced nasty onInsightStateChangedEvent event handler in TargetController with new GetTargetState command 2022-04-28 21:06:57 +01:00
Nav
5a8aa3d657 New GetTargetState TargetController command 2022-04-28 21:05:53 +01:00
Nav
687e28718c Replaced ReportTargetControllerState event with TC command and renamed TargetControllerStateReported event 2022-04-27 22:07:14 +01:00
Nav
391b742d8b Replaced RetrieveMemoryFromTarget event with TC command 2022-04-24 18:55:19 +01:00
Nav
67677e6ea7 Replaced WriteRegistersToTarget event with TC command 2022-04-24 17:37:58 +01:00
Nav
e662d0b57a Replaced RetrieveRegistersFromTarget event with TC command 2022-04-24 16:41:40 +01:00
Nav
b3694970bf Replaced ResetTarget event with TC command 2022-04-23 17:41:02 +01:00
Nav
5da06f22d1 Replaced ResumeTargetExecution event with TC command 2022-04-19 21:12:59 +01:00
Nav
fa4f5e3427 Replaced StopTargetExecution event with TC command 2022-04-18 18:50:23 +01:00
Nav
5efffc6605 Added member function to deregister TargetController command handlers 2022-04-18 18:49:49 +01:00
Nav
0a21526a68 Tidying 2022-04-17 23:56:57 +01:00
Nav
13f5c13065 Implemented new command-response-based interface for the TargetController 2022-04-17 23:55:34 +01:00