Commit Graph

53 Commits

Author SHA1 Message Date
Nav
5896306f1a Removed redundant 'Bloom' namespace from entire codebase 2023-08-13 15:47:51 +01:00
Nav
1f90f21870 Refactored the preserveEeprom implementation to make use of the EESAVE fuse 2023-07-18 23:17:13 +01:00
Nav
df51da4479 Added AVR8 fuse enable strategy 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
6ae1ef1be2 OCDEN fuse bit management 2023-05-07 16:49:45 +01:00
Nav
56ea97369d Preparation for support for the GDB vCont command packet
Also fixed a bug in the `StepExecution` and `ContinueExecution` constructors, where the from address wasn't being extracted properly
2023-04-01 12:37:59 +01:00
Nav
d9d8b3f450 Tidying 2022-12-13 21:12:16 +00:00
Nav
b3ccd8f7de Removed automatic erasing when writing to flash memory on AVR8 targets 2022-12-11 23:27:47 +00:00
Nav
08bc12a26b Deleted redundant AVR8 ProgrammingSession struct 2022-12-11 23:27:08 +00:00
Nav
83c273a22b Implemented eraseMemory() member function in AVR8 class 2022-12-11 18:18:44 +00:00
Nav
96a688df08 Added support for writing to EEPROM via EDBG AVR8 Generic driver 2022-12-08 21:14:40 +00:00
Nav
b3fb3f0955 Lots of tidying 2022-12-03 22:16:21 +00:00
Nav
87e230c589 Tidying 2022-10-09 13:10:30 +01:00
Nav
bc8206ccc7 Corrected missing header includes 2022-10-09 13:10:17 +01:00
Nav
46d8ce1854 Added TargetMemoryAddress, TargetMemorySize, TargetProgramCounter and TargetStackPointer aliases 2022-09-06 17:16:49 +01:00
Nav
96f0c14b53 Made AVR8 Physical Interfaces more generic (to include non-debug interfaces such as ISP) 2022-08-04 21:06:13 +01:00
Nav
40218e5c21 Moved loading of AVR8 TDFs into single function 2022-08-04 21:03:43 +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
012d987454 Added AVR8 programming session struct 2022-06-03 15:46:28 +01:00
Nav
89c47db1c0 Implemented programming mode functions for Avr8 target class 2022-05-15 17:42:02 +01:00
Nav
a3b9bb8ca2 Replaced messy AVR8 target config approach with new Avr8TargetConfig object 2022-03-19 13:28:11 +00:00
Nav
80e5678ddf New "cycleTargetPowerPostDwenUpdate" target config param to control the automatic cycling of target power, after updating the target's DWEN fuse bit 2022-03-16 17:21:12 +00:00
Nav
696e746279 Added target power cycling post AVR8 DWEN fuse bit update 2022-03-16 17:13:57 +00:00
Nav
1513b37544 Shortened DWEN fuse bit config parameter name 2022-03-13 23:52:20 +00:00
Nav
6fb940dd59 Function to update DWEN fuse bit on AVR8 targets, via the ISP interface 2022-03-05 18:03:00 +00:00
Nav
066c7a469f New AVR8 target config parameter ("updateDwenFuseBitOnDebugWireFailure") 2022-03-05 18:02:11 +00:00
Nav
503605cfa0 AvrIspInterface extraction from the debug tool, via the Avr8 target class 2022-03-05 18:01:19 +00:00
Nav
52533e2878 Moved AVR8 physicalInterface config extraction out of EDBG driver 2022-03-01 22:40:00 +00:00
Nav
8b6ee9f100 Tidying 2022-02-27 20:44:01 +00:00
Nav
f28ec0f162 Renamed Avr8Interface class to Avr8DebugInterface, in preparation for an AVR8 programming interface class 2022-02-15 13:14:03 +00:00
Nav
7c08a37d82 Renamed ApplicationConfig to ProjectConfig 2022-01-02 21:24:23 +00:00
Nav
6f364a7009 Added support for excluding address ranges from read memory events 2021-12-25 20:57:03 +00:00
Nav
cd0f2428ef Separate routine for fetching the current stack pointer 2021-11-11 19:03:23 +00:00
Nav
59fcb9c211 Loading TargetMemoryDescriptor for AVR8 targets 2021-10-31 11:36:28 +00:00
Nav
6edfb7376a Tidied structure of all classes within the entire code base
Also some other small bits of tidying
2021-10-31 11:36:28 +00:00
Nav
39c95857e5 Replaced TargetIoPortsUpdated event with RegistersWrittenToTarget event 2021-09-12 23:28:16 +01:00
Nav
1bc881e9ae Included variant ID in target pin descriptor 2021-09-04 17:58:05 +01:00
Nav
3b458bd12d Use std::set instead of std::vector for TargetRegisterDescriptors 2021-08-30 22:23:27 +01:00
Nav
f4da255b75 Updated target register interface with more generic register access & manipulation functions 2021-08-07 17:28:54 +01:00
Nav
d709c8aac9 Retrieving AVR8 target registers and including them in the TargetDescriptor 2021-08-07 17:15:48 +01:00
Nav
d8f53e4f9f Moved AVR8 TDF data extraction into AVR8 TDF class. 2021-07-06 20:07:41 +01:00
Nav
1971f0a89e Refactored AVR8 TDF loading
Refactored EDBG AVR8 target parameter uploading
Implemented UPDI parameter extraction (from TDF) and uploading to debug tool
Introduced supported physical interfaces in AVR8 TDFs
2021-06-27 20:09:15 +01:00
Nav
d365f6348b General tidying, addressing issues found by static analysis tool. 2021-06-22 23:52:31 +01:00
Nav
3f1247ce74 Fixed issue with automatic config variant selection, where we were not properly handling XMEGA targets with the JTAG physical interface.
Also introduced new AVR8 families, for D series targets.
Also moved AVR family param outside of TargetParameters struct
2021-06-06 18:41:08 +01:00
Nav
02446116df Tidying 2021-06-05 22:47:04 +01:00
Nav
ce7e0147db Refactoring AVR8 target variant & pin/pad loading 2021-06-03 01:06:11 +01:00
Nav
11e328e81f Some more renaming of part description files to target description files 2021-06-03 00:49:08 +01:00
Nav
571211b337 Renamed part description files to target description files.
Introduced a generic target description file class with an AVR8 derivation.
Moved AVR8 target description files
2021-05-31 01:42:18 +01:00
Nav
ce480a996c Removed all using declarations and directives from header files 2021-05-24 20:58:49 +01:00
Nav
4a10ad4c35 Cleaned up AVR8 part description file loading 2021-05-02 15:51:58 +01:00