Nav
0118306e30
Refactored UsbInterface::writeBulk member function to use std::span instead of std::vector
2024-11-16 19:58:07 +00:00
Nav
a7ee6cbae2
Refactored page alignment code in EDBG and RISC-V debug translator driver
2024-11-16 19:55:34 +00:00
Nav
7662dec100
Tidying
2024-11-06 20:05:59 +00:00
Nav
285fc41c23
Corrected bug in EDBG driver memory access routines. It was incorrectly using the FUSES memory type when in debug mode (that memory type isn't available in debug mode, only program mode. Was causing a target reset).
2024-11-06 19:46:27 +00:00
Nav
623743995b
Made the EDBG CMSIS-DAP command delay optional for all debug tools, and disabled it by default.
...
The command delay was really choking Bloom's EDBG driver, causing a very noticeable drag on Bloom's performance. It's much faster with the command delay disabled.
There was a good reason for why I introduced this some time ago. Without it, some EDBG debug tools were misbehaving - I remember that for certain. But now, I cannot seem to reproduce these issues. Very odd.
If the issues do reappear, I may have to enable the command delay by default, again, for some debug tools.
For now, if any users experience issues, I'll just suggest they manually enable the command delay via their project config.
Also, I'm not going to document this new config option, as I would prefer the user to approach me if they experience issues as a result of this, so that I'll know if it needs revisiting.
2024-10-27 00:26:06 +01:00
Nav
4160d4259a
Corrected bug in EDBG driver, where we weren't waiting for a stopped event when we should have been
2024-10-27 00:02:00 +01:00
Nav
72d0c28d08
Fixed bug in assertion in RISC-V debug translator
2024-10-20 00:44:09 +01:00
Nav
a65be393be
Tidying
2024-10-19 23:11:22 +01:00
Nav
9b1489fbf2
Removed WchLinkVariant::UNKNOWN
2024-10-19 14:22:51 +01:00
Nav
00d6f5fb71
Corrected bug in RISC-V debug translator where a reset wasn't always keeping the target halted
2024-10-19 14:22:12 +01:00
Nav
9c1385a048
Deleted TDF documentation (don't have the capacity to maintain it ATM)
2024-10-18 00:01:21 +01:00
Nav
348ec19c1b
Tidying RISC-V register structs
...
- Removed unnecessary bit fields
- Added default values to members
- Removed all user-defined constructors to make the structs aggregate, replacing the from-value constructor with a `fromValue()` status member function.
- Made use of designated initialisation
- Changed unscoped enums to scoped
- Other small bits of tidying
2024-10-16 21:22:16 +01:00
Nav
17b90e3c08
Tidying
2024-10-12 23:37:13 +01:00
Nav
9e4d10ae91
Tidying
2024-10-07 20:03:19 +01:00
Nav
248c51acc8
Renamed RiscVDebugInterface::clearAllBreakpoints() in preparation for separating HW breakpoints from SW breakpoints.
2024-10-07 20:02:39 +01:00
Nav
418db1df99
Added config struct for RISC-V debug translator implementation, and WCH debug tools.
...
Also some tidying in the `DebugToolConfig` struct
2024-10-06 23:32:36 +01:00
Nav
d71083c3f9
Tidying
2024-10-06 18:10:02 +01:00
Nav
6c67424af9
On RISC-V activation, clear any triggers that were left over from a previous debug session
2024-10-06 18:06:58 +01:00
Nav
ecd0f5b054
First pass at RISC-V hardware breakpoints (Trigger module)
2024-10-06 17:54:08 +01:00
Nav
9daa53ed45
Retry DMI operations when BUSY status returned in WCH-Link driver
2024-09-04 00:18:42 +01:00
Nav
ecf0bd8919
Added try member functions for RISC-V abstract commands and register access
2024-09-04 00:15:46 +01:00
Nav
2a01f727bf
Tidying RISC-V register structs
2024-09-04 00:13:55 +01:00
Nav
001c9b37c1
Corrected WCH-Link min response size check
2024-08-31 01:53:32 +01:00
Nav
914153077e
Corrected memory address/size alignment in EDBG and RISC-V drivers
2024-08-30 19:59:59 +01:00
Nav
2f6238e360
Tidying
2024-08-17 12:44:01 +01:00
Nav
8f7c3bc1be
Added postInit() function to debug tool interface, for outputting any debug-tool-specific info after initialisation.
...
Removed `getFirmwareVersionString()` function
2024-07-23 21:44:15 +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
4e837218e5
Corrected use of destroyed objects in EDBG param constructors
2024-06-02 21:33:54 +01:00
Nav
ee20507c2e
Corrected debugWire and JTAG HIGH byte parameter values
...
Additional checks in TDF validation to ensure that the IO memory segment offset has been applied to the relevant registers
2024-06-02 21:29:57 +01:00
Nav
ed54b0e726
Tidying
2024-03-29 16:31:14 +00:00
Nav
779a5ad151
Corrected EEARL/H register address extraction from AVR8 TDFs.
...
Some other bits of tidying
2024-03-29 16:16:35 +00:00
Nav
b9d537e924
Created EdbgAvr8Session struct and moved EDBG target info to it
2024-03-28 21:10:08 +00:00
Nav
3c8efa60a6
Added EDBG parameter structs with TDF-based initialisation
2024-03-25 18:59:15 +00:00
Nav
75d5124265
Moved TargetRegisterDescriptor struct to separate file
2024-03-09 17:16:29 +00:00
Nav
7e9e28286f
Made physical interface enum more generic (moved out of AVR8-specific context)
2024-02-15 21:25:12 +00:00
Nav
cc33eea712
RISC-V target ID verification upon activation
2023-12-17 18:43:16 +00:00
Nav
7630baf51b
Implemented RiscVProgramInterface in WchLinkInterface
2023-12-09 18:22:32 +00:00
Nav
f4b30dbdf6
Added RiscVProgramInterface for RISC-V debug tools that are unable to program RISC-V targets via the debug interface
2023-12-08 23:04:04 +00:00
Nav
084eef1a30
Moved wMaxPacketSize retrieval to Usb::UsbDevice class.
...
And some other bits of tidying
2023-12-02 19:31:26 +00:00
Nav
d6b216d51e
Send "end process" command to detach from target, upon deactivaition of WCH-Link debug tools
2023-11-26 00:41:45 +00:00
Nav
ba32e9baf9
Tidying
2023-11-23 17:53:50 +00:00
Nav
f3e9796772
Tidying
2023-11-22 00:38:49 +00:00
Nav
42bcac6f12
Tidying
2023-11-21 22:04:34 +00:00
Nav
9e223f9f9f
Updated DebugTool interface and implemented getRiscVDebugInterface() for WCH-Link debug tools
2023-11-21 22:04:27 +00:00
Nav
826da3e921
Initial pass at a RiscVDebugInterface and implementation (for WCH-Link debug tools)
2023-11-21 21:40:40 +00:00
Nav
516892f7eb
Added Microchip namespace to EDBG debug tool classes
2023-11-18 23:50:42 +00:00
Nav
1600888624
Extract debug tool firmware version at startup
2023-11-18 23:15:11 +00:00
Nav
221d931add
Began implementation of WCH-Link protocol, for the WCH-LinkE debug tool.
...
Foundations have been laid.
2023-11-18 22:58:48 +00:00
Nav
210552de4f
Tidying
2023-11-18 22:53:20 +00:00
Nav
68f1ba35ff
Added UsbInterface class to access non-HID USB interfaces
2023-11-18 22:53:06 +00:00