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
Nav
e271590f70
Implemented USB device serial number extraction via USB device descriptor
2023-11-18 15:03:50 +00:00
Nav
55d3fe76e0
Moved EDBG protocol code to more appropriate directory.
...
Updated necessary namespaces.
Other bits of tidying.
2023-11-17 22:20:39 +00:00
Nav
46bbf9cb31
Fixed seg fault bug when clearing HW breakpoints in EDBG driver
2023-09-22 20:52:17 +01:00
Nav
9698d83cb4
Clear HW breakpoints upon entering programming mode in EDBG driver
2023-09-22 20:51:59 +01:00
Nav
b3d03f73ac
Clear hardware breakpoints in clearAllBreakpoints() (EDBG AVR8 driver)
2023-09-21 01:10:35 +01:00
Nav
b5df37ae9b
Removed TargetProgramCounter type alias
2023-09-21 00:40:30 +01:00
Nav
d7b59cac59
Support for hardware breakpoints
2023-09-20 23:43:29 +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
216a1357b7
Moved programming mode requirement for fuse programming into EDBG driver, as it is specific to that driver
2023-07-18 23:17:13 +01:00
Nav
1f90f21870
Refactored the preserveEeprom implementation to make use of the EESAVE fuse
2023-07-18 23:17:13 +01:00
Nav
f3f0b504f3
Removed fuse type restriction when extracting fuse bit descriptors from AVR8 TDFs
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
ab8693b1e0
Fixed bug where Bloom wasn't managing the DWEN fuse bit on some development boards.
2023-07-18 21:28:45 +01:00
Nav
efeb5ad48c
Corrected "Unknown target family" error for new AVR EA targets.
2023-05-12 19:08:52 +01:00
Nav
5825b11d0b
Added suggestion to check OCDEN fuse bit, in error message for DEVICE_NOT_UNDER_CONTROL error.
2023-05-08 13:24:45 +01:00
Nav
1f57ca3f21
Corrected bug with leaving programming mode on Snap and PICkit 4 debug tools
2023-05-08 02:44:03 +01:00
Nav
e5c78e7b3a
Added preserveEeprom target param
2023-05-07 16:50:59 +01:00
Nav
6ae1ef1be2
OCDEN fuse bit management
2023-05-07 16:49:45 +01:00