Rework PDEC FDIR #772
@ -133,6 +133,7 @@ void EiveSystem::handleEventMessages() {
|
|||||||
case pdec::INVALID_TC_FRAME: {
|
case pdec::INVALID_TC_FRAME: {
|
||||||
if (event.getParameter1() == pdec::FRAME_DIRTY_RETVAL) {
|
if (event.getParameter1() == pdec::FRAME_DIRTY_RETVAL) {
|
||||||
frameDirtyErrorCounter++;
|
frameDirtyErrorCounter++;
|
||||||
|
frameDirtyCheckCd.resetTimer();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -318,7 +319,7 @@ void EiveSystem::pdecRecoveryLogic() {
|
|||||||
if (pdecResetCounterResetCd.hasTimedOut()) {
|
if (pdecResetCounterResetCd.hasTimedOut()) {
|
||||||
pdecResetCounter = 0;
|
pdecResetCounter = 0;
|
||||||
}
|
}
|
||||||
if (frameDirtyCheckCd.hasTimedOut()) {
|
if (frameDirtyCheckCd.hasTimedOut() and frameDirtyErrorCounter > 0) {
|
||||||
if (frameDirtyErrorCounter >= FRAME_DIRTY_COM_REBOOT_LIMIT) {
|
if (frameDirtyErrorCounter >= FRAME_DIRTY_COM_REBOOT_LIMIT) {
|
||||||
// Try one full PDEC reset.
|
// Try one full PDEC reset.
|
||||||
CommandMessage msg;
|
CommandMessage msg;
|
||||||
@ -329,7 +330,6 @@ void EiveSystem::pdecRecoveryLogic() {
|
|||||||
pdecResetCounter++;
|
pdecResetCounter++;
|
||||||
}
|
}
|
||||||
frameDirtyErrorCounter = 0;
|
frameDirtyErrorCounter = 0;
|
||||||
frameDirtyCheckCd.resetTimer();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user