Restricted memory access requests to 256 bytes per request, for the Xplained Pro debug tool

This commit is contained in:
Nav
2021-11-22 23:08:27 +00:00
parent f202502005
commit 2f484eca76

View File

@@ -31,6 +31,15 @@ void XplainedPro::init() {
this->edbgAvr8Interface = std::make_unique<EdbgAvr8Interface>(this->edbgInterface); this->edbgAvr8Interface = std::make_unique<EdbgAvr8Interface>(this->edbgInterface);
/*
* The Xplained Pro debug tool returns incorrect data for any read memory command that exceeds 256 bytes in the
* size of the read request, despite the fact that the HID report size is 512 bytes. The debug tool doesn't
* report any error, it just returns incorrect data.
*
* This means we must enforce a hard limit on the number of bytes we attempt to read, per request.
*/
this->edbgAvr8Interface->setMaximumMemoryAccessSizePerRequest(256);
this->setInitialised(true); this->setInitialised(true);
} }