L0 Debugger Win - add initial event handling

Related-To: NEO-6723

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
This commit is contained in:
Igor Venevtsev
2022-05-28 20:23:42 +00:00
committed by Compute-Runtime-Automation
parent afceaa6e19
commit dc2e1dfdb0
4 changed files with 180 additions and 4 deletions

View File

@@ -36,10 +36,27 @@ struct WddmEuDebugInterfaceMock : public WddmMock {
}
case DBGUMD_ACTION_DETACH_DEBUGGER:
break;
case DBGUMD_ACTION_READ_EVENT: {
pEscapeInfo->KmEuDbgL0EscapeInfo.EscapeReturnStatus = readEventOutParams.escapeReturnStatus;
if (DBGUMD_RETURN_READ_EVENT_TIMEOUT_EXPIRED == pEscapeInfo->KmEuDbgL0EscapeInfo.EscapeReturnStatus) {
// KMD event queue is empty
break;
}
pEscapeInfo->KmEuDbgL0EscapeInfo.ReadEventParams.ReadEventType = readEventOutParams.readEventType;
auto paramBuffer = reinterpret_cast<uint8_t *>(pEscapeInfo->KmEuDbgL0EscapeInfo.ReadEventParams.EventParamBufferPtr);
memcpy_s(paramBuffer, pEscapeInfo->KmEuDbgL0EscapeInfo.ReadEventParams.EventParamsBufferSize, &readEventOutParams.eventParamsBuffer, sizeof(READ_EVENT_PARAMS_BUFFER));
break;
}
}
return escapeStatus;
};
struct {
EUDBG_L0DBGUMD_ESCAPE_RETURN_TYPE escapeReturnStatus = DBGUMD_RETURN_ESCAPE_SUCCESS;
EUDBG_DBGUMD_READ_EVENT_TYPE readEventType = DBGUMD_READ_EVENT_MAX;
READ_EVENT_PARAMS_BUFFER eventParamsBuffer = {0};
} readEventOutParams;
bool debugAttachAvailable = true;
NTSTATUS escapeStatus = STATUS_SUCCESS;
uint64_t debugHandle = 0x0DEB0DEB;