Commit Graph

284 Commits

Author SHA1 Message Date
Nav
1bf0e97248 Replaced manual resource management of libusb_config_descriptor resource, with std::unique_ptr 2022-10-02 13:48:42 +01:00
Nav
afffaafc86 Fixed hard-coded configurationIndex value when setting USB configuration on a USB device 2022-10-02 13:28:27 +01:00
Nav
28cbeb6fc4 More tidying 2022-10-01 21:54:25 +01:00
Nav
9fb017c2de Renamed CMSIS commandId field to id 2022-10-01 21:02:10 +01:00
Nav
065a389dfe Improved naming consistency of aliases 2022-10-01 21:01:37 +01:00
Nav
2c6fd25ae4 Tidying EDBG driver code:
- Binned a lot of pointless code
- Simplified many EDBG data structure implementations
- Const-correctness
- Many other bits of tidying
2022-10-01 20:46:56 +01:00
Nav
a5b0097036 Tidying low-level debug tool driver code:
- Use automatic objects for libusb/hidapi resources, where possible (to reduce manual resource management)
- Removed unused/redundant code
- Tidied HidInterface class
- Tidied debug tool initialisation code
- Other bits of tidying
2022-10-01 16:50:57 +01:00
Nav
2282967e0d Fixed intermittent 'illegal target state' error from EDBG debug tools, when issuing commands immediately after target reset. 2022-09-24 18:45:45 +01:00
Nav
0b54a1b590 Tidying 2022-09-17 20:16:23 +01:00
Nav
65bdcd62d3 Enforce flash page alignment for UPDI targets, when accessing flash 2022-09-17 19:55:55 +01:00
Nav
7d07a9cf6c Tidying 2022-09-06 17:17:43 +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
c7cd88e198 Tidying 2022-07-16 19:12:45 +01:00
Nav
fbf141c7ef Fixed bug with some debug tools (PICkit4 and Snap) losing control of the target after disabling programming mdoe 2022-06-05 21:04:08 +01:00
Nav
ec987d430e Removed unnecessary flash page alignment for UPDI flash access 2022-06-05 21:03:28 +01:00
Nav
fae36d89b1 Corrected flash memory access types used for JTAG sessions 2022-06-05 17:49:05 +01:00
Nav
c51e6ee28b Increased timeout for waiting for CMSIS responses 2022-06-05 17:48:30 +01:00
Nav
b3af06654c Tidying 2022-06-04 15:20:37 +01:00
Nav
e8b39122ad Using FLASH_PAGE memory type in the AVR8 EDBG driver, for flash memory access in UPDI targets 2022-06-04 15:20:02 +01:00
Nav
8061a349fc Perform an entire chip erase for UPDI targets, in preparation for programming 2022-06-04 15:18:53 +01:00
Nav
1c92a02950 Added eraseProgramMemorySection() function to Avr8 debug interface - to erase XMEGA program memory sections when necessary 2022-06-03 15:49:12 +01:00
Nav
94b7130dbb Added BOOT_FLASH memory type in AVR8 EDBG driver 2022-06-03 15:45:43 +01:00
Nav
df0328cef7 Tidying 2022-06-03 01:45:19 +01:00
Nav
87b31d6f11 Included MCU module base address device parameters sent to EDBG tools, for XMEGA targets 2022-06-02 23:05:38 +01:00
Nav
4ab836f158 Renamed nvmBaseAddress to nvmModuleBaseAddress 2022-06-02 23:00:27 +01:00
Nav
5eabf145c2 Erasing XMEGA application section upon entering programming mode 2022-06-02 22:24:37 +01:00
Nav
86bb3aead1 Aligning and paging flash memory access on XMEGA targets, in the EDBG driver - resolves a number of bugs and removes the concern of exceeding restrictions enforced by the EDBG tool. 2022-06-02 22:21:55 +01:00
Nav
dd204742d3 Renamed Linux to GNU/Linux and other tidying 2022-06-01 21:48:27 +01:00
Nav
ec9068ba42 Fixed typo causing invalid AVR CMSIS command packet sizes 2022-06-01 21:47:06 +01:00
Nav
d65e8cf89f Fixed AVR CMSIS command packet splitting bug 2022-06-01 21:46:20 +01:00
Nav
ce33ecba99 Added word alignment for flash memory access in UPDI sessions 2022-05-28 13:44:10 +01:00
Nav
ae3f83dce7 Corrected EdbgAvr8Interface readMemory() alignment bug 2022-05-28 13:29:08 +01:00
Nav
abfd47dc9c Tidying 2022-05-23 23:50:10 +01:00
Nav
33da17e393 Added support for flash memory writes in EdbgAvr8Interface 2022-05-23 23:49:49 +01:00
Nav
046eefb6e4 AVR8 EDBG memory types for programming mode 2022-05-23 23:48:44 +01:00
Nav
644724a529 Tidying 2022-05-17 19:51:13 +01:00
Nav
514355fbbb Moved flash memory address & byte alignment into separate functions in EdbgAvr8Interface 2022-05-17 19:51:00 +01:00
Nav
aefe3dd7e8 Added programmingModeEnabled flag to EdbgAvr8Interface 2022-05-17 19:45:56 +01:00
Nav
0808303311 Moved EdbgAvr8Interface static inline functions to source file 2022-05-17 19:45:30 +01:00
Nav
89e81129fe Implemented programming mode functions in EdbgAvr8Interface implementation 2022-05-15 17:40:56 +01:00
Nav
a582a963a8 Added programming mode functions in Avr8DebugInterface 2022-05-15 17:40:15 +01:00
Nav
39d2bb7c5a Enabled flash paging for SPM AVR8 EDBG memory type 2022-05-14 22:37:47 +01:00
Nav
158a32a259 Fixed bug where we were incorrectly offsetting flash reads (see https://github.com/navnavnav/Bloom/issues/40) 2022-05-14 22:36:19 +01:00
Nav
814b98ddd0 Tidying 2022-05-09 22:36:44 +01:00
Nav
4956920432 Debug tool driver for the JTAGICE3 2022-05-04 20:06:56 +01:00
Nav
b6879991a2 Made missing break event post attach a warning instead of an error 2022-05-03 19:59:38 +01:00
Nav
15f7aca952 Mentioned OCDEN fuse bit in AVR8 failure error message 2022-05-01 21:18:20 +01:00
Nav
a11e347e2c Implemented waiting for target stopped event after invoking a target reset via the EDBG AVR8 interface 2022-04-08 22:16:19 +01:00
Nav
76fed8df72 Created subdirectory CMakeLists.txt files and moved source specifications from root CMakeLists.txt file 2022-04-04 22:21:42 +01:00