Support for a number of AVRDU/EA/EB targets

This commit is contained in:
Nav
2025-01-06 22:32:26 +00:00
parent baee5005db
commit b999c5382c
30 changed files with 42114 additions and 2 deletions

View File

@@ -9,5 +9,7 @@ enum AvrFamily: string
case DB = 'DB'; case DB = 'DB';
case DA = 'DA'; case DA = 'DA';
case DD = 'DD'; case DD = 'DD';
case DU = 'DU';
case EA = 'EA'; case EA = 'EA';
case EB = 'EB';
} }

View File

@@ -328,9 +328,17 @@ class AtdfService
return AvrFamily::DD; return AvrFamily::DD;
} }
if ($atdfFamilyName === 'avr du' || substr($atdfTargetName, 5, 2) === 'du') {
return AvrFamily::DU;
}
if ($atdfFamilyName === 'avr ea' || substr($atdfTargetName, 5, 2) === 'ea') { if ($atdfFamilyName === 'avr ea' || substr($atdfTargetName, 5, 2) === 'ea') {
return AvrFamily::EA; return AvrFamily::EA;
} }
if ($atdfFamilyName === 'avr eb' || substr($atdfTargetName, 5, 2) === 'eb') {
return AvrFamily::EB;
}
} }
return null; return null;
@@ -1059,7 +1067,7 @@ class AtdfService
return new Variant( return new Variant(
str_replace( str_replace(
'-', ['-', '/'],
'_', '_',
strtolower($attributes['ordercode'] ?? $attributes['name'] ?? '') strtolower($attributes['ordercode'] ?? $attributes['name'] ?? '')
), ),

View File

@@ -85,7 +85,14 @@ namespace DebugToolDrivers::Microchip::Protocols::Edbg::Avr
} }
} }
if (avrFamily == Family::DA || avrFamily == Family::DB || avrFamily == Family::DD || avrFamily == Family::EA) { if (
avrFamily == Family::DA
|| avrFamily == Family::DB
|| avrFamily == Family::DD
|| avrFamily == Family::DU
|| avrFamily == Family::EA
|| avrFamily == Family::EB
) {
switch (physicalInterface) { switch (physicalInterface) {
case TargetPhysicalInterface::UPDI: { case TargetPhysicalInterface::UPDI: {
return Avr8ConfigVariant::UPDI; return Avr8ConfigVariant::UPDI;

View File

@@ -10,6 +10,8 @@ namespace Targets::Microchip::Avr8
DA, DA,
DB, DB,
DD, DD,
DU,
EA, EA,
EB,
}; };
} }

View File

@@ -39,7 +39,9 @@ namespace Targets::Microchip::Avr8
{"DA", Family::DA}, {"DA", Family::DA},
{"DB", Family::DB}, {"DB", Family::DB},
{"DD", Family::DD}, {"DD", Family::DD},
{"DU", Family::DU},
{"EA", Family::EA}, {"EA", Family::EA},
{"EB", Family::EB},
}; };
const auto familyIt = targetFamiliesByName.find(this->getDeviceAttribute("avr-family")); const auto familyIt = targetFamiliesByName.find(this->getDeviceAttribute("avr-family"));

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -143,9 +143,33 @@ list(
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/D-SERIES/AVR128DB28.xml ${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/D-SERIES/AVR128DB28.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/D-SERIES/AVR64DD32.xml ${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/D-SERIES/AVR64DD32.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/D-SERIES/AVR16DD28.xml ${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/D-SERIES/AVR16DD28.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/D-SERIES/AVR16DU14.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/D-SERIES/AVR16DU20.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/D-SERIES/AVR16DU28.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/D-SERIES/AVR16DU32.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/D-SERIES/AVR32DU14.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/D-SERIES/AVR32DU20.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/D-SERIES/AVR32DU28.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/D-SERIES/AVR32DU32.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/D-SERIES/AVR64DU28.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/D-SERIES/AVR64DU32.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/E-SERIES/AVR64EA28.xml ${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/E-SERIES/AVR64EA28.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/E-SERIES/AVR64EA48.xml ${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/E-SERIES/AVR64EA48.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/E-SERIES/AVR64EA32.xml ${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/E-SERIES/AVR64EA32.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/E-SERIES/AVR16EA28.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/E-SERIES/AVR16EA32.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/E-SERIES/AVR16EA48.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/E-SERIES/AVR16EB14.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/E-SERIES/AVR16EB20.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/E-SERIES/AVR16EB28.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/E-SERIES/AVR16EB32.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/E-SERIES/AVR32EA28.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/E-SERIES/AVR32EA32.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/E-SERIES/AVR32EA48.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/E-SERIES/AVR32EB14.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/E-SERIES/AVR32EB20.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/E-SERIES/AVR32EB28.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/E-SERIES/AVR32EB32.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/MEGA/AT90USB1287.xml ${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/MEGA/AT90USB1287.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/MEGA/ATMEGA406.xml ${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/MEGA/ATMEGA406.xml
${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/MEGA/ATMEGA325P.xml ${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/MEGA/ATMEGA325P.xml