diff --git a/src/DebugToolDrivers/Microchip/Protocols/EDBG/AVR/EdbgAvr8Interface.cpp b/src/DebugToolDrivers/Microchip/Protocols/EDBG/AVR/EdbgAvr8Interface.cpp index fa119fe8..458ab1f6 100644 --- a/src/DebugToolDrivers/Microchip/Protocols/EDBG/AVR/EdbgAvr8Interface.cpp +++ b/src/DebugToolDrivers/Microchip/Protocols/EDBG/AVR/EdbgAvr8Interface.cpp @@ -96,7 +96,7 @@ namespace DebugToolDrivers::Microchip::Protocols::Edbg::Avr const Targets::Microchip::Avr8::Avr8TargetConfig& targetConfig ) : edbgInterface(edbgInterface) - , session(EdbgAvr8Session(targetDescriptionFile, targetConfig)) + , session(EdbgAvr8Session{targetDescriptionFile, targetConfig}) {} void EdbgAvr8Interface::init() { diff --git a/src/Targets/RiscV/Wch/WchRiscV.cpp b/src/Targets/RiscV/Wch/WchRiscV.cpp index 5b03e89e..7ea06c24 100644 --- a/src/Targets/RiscV/Wch/WchRiscV.cpp +++ b/src/Targets/RiscV/Wch/WchRiscV.cpp @@ -52,6 +52,12 @@ namespace Targets::RiscV::Wch ) ) { + if (this->targetConfig.physicalInterface != TargetPhysicalInterface::SDI) { + throw Exceptions::InvalidConfig{ + "Invalid physical interface selection - WCH RISC-V targets only support the SDI interface" + }; + } + if ( this->targetConfig.programSegmentKey.has_value() && *(this->targetConfig.programSegmentKey) != this->bootProgramSegmentDescriptor.key @@ -507,7 +513,7 @@ namespace Targets::RiscV::Wch try { if (arguments[0] == "program_mode") { - const auto &actualAliasedSegment = this->resolveAliasedMemorySegment(); + const auto& actualAliasedSegment = this->resolveAliasedMemorySegment(); if (arguments.size() == 1) { response.output = "Program mode: \"" + StringService::applyTerminalColor( diff --git a/src/Targets/TargetDescriptionFiles/TargetDescriptionFiles.cmake b/src/Targets/TargetDescriptionFiles/TargetDescriptionFiles.cmake index 2cff8d0d..8e797782 100644 --- a/src/Targets/TargetDescriptionFiles/TargetDescriptionFiles.cmake +++ b/src/Targets/TargetDescriptionFiles/TargetDescriptionFiles.cmake @@ -264,6 +264,8 @@ list( ${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/MEGA/ATMEGA3290PA.xml ${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/MEGA/ATMEGA328PB.xml ${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/AVR8/MEGA/ATMEGA809.xml + ${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/RISC-V/WCH/CH32X035.xml + ${CMAKE_CURRENT_SOURCE_DIR}/src/Targets/TargetDescriptionFiles/RISC-V/WCH/CH32V003.xml ) # Because the TDF_FILES_LIST is only used to specify dependencies for some custom commands, there is nothing enforcing diff --git a/src/Targets/TargetMemoryCache.hpp b/src/Targets/TargetMemoryCache.hpp index 6f7d1833..776a5f5c 100644 --- a/src/Targets/TargetMemoryCache.hpp +++ b/src/Targets/TargetMemoryCache.hpp @@ -16,6 +16,8 @@ namespace Targets /** * Fetches data from the cache. * + * TODO: Change return type to TargetMemoryBufferSpan + * * @param startAddress * @param bytes *