New AVR8 target config parameter ("updateDwenFuseBitOnDebugWireFailure")
This commit is contained in:
@@ -63,6 +63,22 @@ namespace Bloom::Targets::Microchip::Avr::Avr8Bit
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (targetConfig.jsonObject.contains("updateDwenFuseBitOnDebugWireFailure")) {
|
||||||
|
this->updateDwenFuseBitOnDebugWireFailure = targetConfig.jsonObject.value(
|
||||||
|
"updateDwenFuseBitOnDebugWireFailure"
|
||||||
|
).toBool();
|
||||||
|
|
||||||
|
if (this->updateDwenFuseBitOnDebugWireFailure
|
||||||
|
&& this->avrIspInterface == nullptr
|
||||||
|
&& this->physicalInterface == PhysicalInterface::DEBUG_WIRE
|
||||||
|
) {
|
||||||
|
Logger::warning(
|
||||||
|
"The connected debug tool (or associated driver) does not provide any ISP interface. "
|
||||||
|
"Bloom will be unable to update the DWEN fuse bit in the event of a debugWire activation failure."
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
this->avr8DebugInterface->configure(targetConfig);
|
this->avr8DebugInterface->configure(targetConfig);
|
||||||
|
|
||||||
if (this->avrIspInterface != nullptr) {
|
if (this->avrIspInterface != nullptr) {
|
||||||
|
|||||||
@@ -136,6 +136,8 @@ namespace Bloom::Targets::Microchip::Avr::Avr8Bit
|
|||||||
std::map<TargetRegisterType, TargetRegisterDescriptors> targetRegisterDescriptorsByType;
|
std::map<TargetRegisterType, TargetRegisterDescriptors> targetRegisterDescriptorsByType;
|
||||||
std::map<TargetMemoryType, TargetMemoryDescriptor> targetMemoryDescriptorsByType;
|
std::map<TargetMemoryType, TargetMemoryDescriptor> targetMemoryDescriptorsByType;
|
||||||
|
|
||||||
|
bool updateDwenFuseBitOnDebugWireFailure = false;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Users are required to set their desired physical interface in their Bloom configuration. This would take
|
* Users are required to set their desired physical interface in their Bloom configuration. This would take
|
||||||
* the form of a string, so we map the available options to the appropriate enums.
|
* the form of a string, so we map the available options to the appropriate enums.
|
||||||
@@ -151,6 +153,7 @@ namespace Bloom::Targets::Microchip::Avr::Avr8Bit
|
|||||||
{"updi", PhysicalInterface::UPDI},
|
{"updi", PhysicalInterface::UPDI},
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Resolves the appropriate TDF for the AVR8 target and populates this->targetDescriptionFile.
|
* Resolves the appropriate TDF for the AVR8 target and populates this->targetDescriptionFile.
|
||||||
*/
|
*/
|
||||||
|
|||||||
Reference in New Issue
Block a user