mirror of
https://github.com/nefarius/ViGEmBus.git
synced 2025-08-10 00:52:17 +00:00
Merge pull request #1 from megadrago88/feature/core/wpp_tracing
Feature core wpp tracing
This commit is contained in:
30
sys/xgip.c
30
sys/xgip.c
@@ -105,7 +105,7 @@ NTSTATUS Xgip_PrepareHardware(WDFDEVICE Device)
|
||||
status = WdfDeviceAddQueryInterface(Device, &ifaceCfg);
|
||||
if (!NT_SUCCESS(status))
|
||||
{
|
||||
KdPrint((DRIVERNAME "WdfDeviceAddQueryInterface failed status 0x%x\n", status));
|
||||
TraceEvents(TRACE_LEVEL_ERROR, TRACE_XGIP, "WdfDeviceAddQueryInterface failed with status %!STATUS!", status);
|
||||
return status;
|
||||
}
|
||||
|
||||
@@ -128,7 +128,7 @@ NTSTATUS Xgip_AssignPdoContext(WDFDEVICE Device)
|
||||
|
||||
PXGIP_DEVICE_DATA xgip = XgipGetData(Device);
|
||||
|
||||
KdPrint((DRIVERNAME "Initializing XGIP context...\n"));
|
||||
TraceEvents(TRACE_LEVEL_VERBOSE, TRACE_XGIP, "Initializing XGIP context...");
|
||||
|
||||
RtlZeroMemory(xgip, sizeof(XGIP_DEVICE_DATA));
|
||||
|
||||
@@ -145,7 +145,7 @@ NTSTATUS Xgip_AssignPdoContext(WDFDEVICE Device)
|
||||
status = WdfIoQueueCreate(Device, &pendingUsbQueueConfig, WDF_NO_OBJECT_ATTRIBUTES, &xgip->PendingUsbInRequests);
|
||||
if (!NT_SUCCESS(status))
|
||||
{
|
||||
KdPrint((DRIVERNAME "WdfIoQueueCreate failed 0x%x\n", status));
|
||||
TraceEvents(TRACE_LEVEL_ERROR, TRACE_XGIP, "WdfIoQueueCreate failed with status %!STATUS!", status);
|
||||
return status;
|
||||
}
|
||||
|
||||
@@ -155,7 +155,7 @@ NTSTATUS Xgip_AssignPdoContext(WDFDEVICE Device)
|
||||
status = WdfIoQueueCreate(Device, ¬ificationsQueueConfig, WDF_NO_OBJECT_ATTRIBUTES, &xgip->PendingNotificationRequests);
|
||||
if (!NT_SUCCESS(status))
|
||||
{
|
||||
KdPrint((DRIVERNAME "WdfIoQueueCreate failed 0x%x\n", status));
|
||||
TraceEvents(TRACE_LEVEL_ERROR, TRACE_XGIP, "WdfIoQueueCreate failed with status %!STATUS!", status);
|
||||
return status;
|
||||
}
|
||||
|
||||
@@ -167,7 +167,7 @@ NTSTATUS Xgip_AssignPdoContext(WDFDEVICE Device)
|
||||
status = WdfCollectionCreate(&collectionAttribs, &xgip->XboxgipSysInitCollection);
|
||||
if (!NT_SUCCESS(status))
|
||||
{
|
||||
KdPrint((DRIVERNAME "WdfCollectionCreate failed 0x%x\n", status));
|
||||
TraceEvents(TRACE_LEVEL_ERROR, TRACE_XGIP, "WdfCollectionCreate failed with status %!STATUS!", status);
|
||||
return status;
|
||||
}
|
||||
|
||||
@@ -186,7 +186,7 @@ NTSTATUS Xgip_AssignPdoContext(WDFDEVICE Device)
|
||||
status = WdfTimerCreate(&timerConfig, &timerAttribs, &xgip->XboxgipSysInitTimer);
|
||||
if (!NT_SUCCESS(status))
|
||||
{
|
||||
KdPrint((DRIVERNAME "WdfTimerCreate failed 0x%x\n", status));
|
||||
TraceEvents(TRACE_LEVEL_ERROR, TRACE_XGIP, "WdfTimerCreate failed with status %!STATUS!", status);
|
||||
return status;
|
||||
}
|
||||
|
||||
@@ -292,11 +292,11 @@ VOID Xgip_GetDeviceDescriptorType(PUSB_DEVICE_DESCRIPTOR pDescriptor, PPDO_DEVIC
|
||||
|
||||
VOID Xgip_SelectConfiguration(PUSBD_INTERFACE_INFORMATION pInfo)
|
||||
{
|
||||
KdPrint((DRIVERNAME ">> >> >> URB_FUNCTION_SELECT_CONFIGURATION: Length %d, Interface %d, Alternate %d, Pipes %d\n",
|
||||
TraceEvents(TRACE_LEVEL_INFORMATION, TRACE_XGIP, ">> >> >> URB_FUNCTION_SELECT_CONFIGURATION: Length %d, Interface %d, Alternate %d, Pipes %d",
|
||||
(int)pInfo->Length,
|
||||
(int)pInfo->InterfaceNumber,
|
||||
(int)pInfo->AlternateSetting,
|
||||
pInfo->NumberOfPipes));
|
||||
pInfo->NumberOfPipes);
|
||||
|
||||
pInfo->Class = 0xFF;
|
||||
pInfo->SubClass = 0x47;
|
||||
@@ -322,11 +322,11 @@ VOID Xgip_SelectConfiguration(PUSBD_INTERFACE_INFORMATION pInfo)
|
||||
|
||||
pInfo = (PUSBD_INTERFACE_INFORMATION)((PCHAR)pInfo + pInfo->Length);
|
||||
|
||||
KdPrint((DRIVERNAME ">> >> >> URB_FUNCTION_SELECT_CONFIGURATION: Length %d, Interface %d, Alternate %d, Pipes %d\n",
|
||||
TraceEvents(TRACE_LEVEL_INFORMATION, TRACE_XGIP, ">> >> >> URB_FUNCTION_SELECT_CONFIGURATION: Length %d, Interface %d, Alternate %d, Pipes %d",
|
||||
(int)pInfo->Length,
|
||||
(int)pInfo->InterfaceNumber,
|
||||
(int)pInfo->AlternateSetting,
|
||||
pInfo->NumberOfPipes));
|
||||
pInfo->NumberOfPipes);
|
||||
|
||||
pInfo->Class = 0xFF;
|
||||
pInfo->SubClass = 0x47;
|
||||
@@ -355,14 +355,14 @@ VOID Xgip_SysInitTimerFunc(
|
||||
// Is TRUE when collection is filled up
|
||||
if (xgip->XboxgipSysInitReady)
|
||||
{
|
||||
KdPrint((DRIVERNAME "XBOXGIP ready, completing requests...\n"));
|
||||
TraceEvents(TRACE_LEVEL_VERBOSE, TRACE_XGIP, "XBOXGIP ready, completing requests...");
|
||||
|
||||
// Get pending IN request
|
||||
status = WdfIoQueueRetrieveNextRequest(xgip->PendingUsbInRequests, &usbRequest);
|
||||
|
||||
if (NT_SUCCESS(status))
|
||||
{
|
||||
KdPrint((DRIVERNAME "Request found\n"));
|
||||
TraceEvents(TRACE_LEVEL_VERBOSE, TRACE_XGIP, "Request found");
|
||||
|
||||
// Get top memory object
|
||||
mem = (WDFMEMORY)WdfCollectionGetFirstItem(xgip->XboxgipSysInitCollection);
|
||||
@@ -382,9 +382,9 @@ VOID Xgip_SysInitTimerFunc(
|
||||
urb->UrbBulkOrInterruptTransfer.TransferBufferLength = (ULONG)size;
|
||||
RtlCopyBytes(urb->UrbBulkOrInterruptTransfer.TransferBuffer, Buffer, size);
|
||||
|
||||
KdPrint((DRIVERNAME "[%X] Buffer length: %d\n",
|
||||
TraceEvents(TRACE_LEVEL_INFORMATION, TRACE_XGIP, "[%X] Buffer length: %d",
|
||||
((PUCHAR)urb->UrbBulkOrInterruptTransfer.TransferBuffer)[0],
|
||||
urb->UrbBulkOrInterruptTransfer.TransferBufferLength));
|
||||
urb->UrbBulkOrInterruptTransfer.TransferBufferLength);
|
||||
|
||||
// Complete pending request
|
||||
WdfRequestComplete(usbRequest, status);
|
||||
@@ -397,7 +397,7 @@ VOID Xgip_SysInitTimerFunc(
|
||||
// Stop timer when collection is purged
|
||||
if (WdfCollectionGetCount(xgip->XboxgipSysInitCollection) == 0)
|
||||
{
|
||||
KdPrint((DRIVERNAME "Collection finished\n"));
|
||||
TraceEvents(TRACE_LEVEL_VERBOSE, TRACE_XGIP, "Collection finished");
|
||||
|
||||
WdfTimerStop(xgip->XboxgipSysInitTimer, FALSE);
|
||||
}
|
||||
|
||||
34
sys/xusb.c
34
sys/xusb.c
@@ -102,7 +102,7 @@ NTSTATUS Xusb_PrepareHardware(WDFDEVICE Device)
|
||||
status = WdfDeviceAddQueryInterface(Device, &ifaceCfg);
|
||||
if (!NT_SUCCESS(status))
|
||||
{
|
||||
KdPrint((DRIVERNAME "Couldn't register unknown interface GUID: %08X-%04X-%04X-%02X%02X%02X%02X%02X%02X%02X%02X (status 0x%x)\n",
|
||||
TraceEvents(TRACE_LEVEL_ERROR, TRACE_XUSB, "Couldn't register unknown interface GUID: %08X-%04X-%04X-%02X%02X%02X%02X%02X%02X%02X%02X (Failed with status %!STATUS!)",
|
||||
GUID_DEVINTERFACE_XUSB_UNKNOWN_0.Data1,
|
||||
GUID_DEVINTERFACE_XUSB_UNKNOWN_0.Data2,
|
||||
GUID_DEVINTERFACE_XUSB_UNKNOWN_0.Data3,
|
||||
@@ -114,7 +114,7 @@ NTSTATUS Xusb_PrepareHardware(WDFDEVICE Device)
|
||||
GUID_DEVINTERFACE_XUSB_UNKNOWN_0.Data4[5],
|
||||
GUID_DEVINTERFACE_XUSB_UNKNOWN_0.Data4[6],
|
||||
GUID_DEVINTERFACE_XUSB_UNKNOWN_0.Data4[7],
|
||||
status));
|
||||
status);
|
||||
|
||||
return status;
|
||||
}
|
||||
@@ -126,7 +126,7 @@ NTSTATUS Xusb_PrepareHardware(WDFDEVICE Device)
|
||||
status = WdfDeviceAddQueryInterface(Device, &ifaceCfg);
|
||||
if (!NT_SUCCESS(status))
|
||||
{
|
||||
KdPrint((DRIVERNAME "Couldn't register unknown interface GUID: %08X-%04X-%04X-%02X%02X%02X%02X%02X%02X%02X%02X (status 0x%x)\n",
|
||||
TraceEvents(TRACE_LEVEL_ERROR, TRACE_XUSB, "Couldn't register unknown interface GUID: %08X-%04X-%04X-%02X%02X%02X%02X%02X%02X%02X%02X (Failed with status %!STATUS!)",
|
||||
GUID_DEVINTERFACE_XUSB_UNKNOWN_1.Data1,
|
||||
GUID_DEVINTERFACE_XUSB_UNKNOWN_1.Data2,
|
||||
GUID_DEVINTERFACE_XUSB_UNKNOWN_1.Data3,
|
||||
@@ -138,7 +138,7 @@ NTSTATUS Xusb_PrepareHardware(WDFDEVICE Device)
|
||||
GUID_DEVINTERFACE_XUSB_UNKNOWN_1.Data4[5],
|
||||
GUID_DEVINTERFACE_XUSB_UNKNOWN_1.Data4[6],
|
||||
GUID_DEVINTERFACE_XUSB_UNKNOWN_1.Data4[7],
|
||||
status));
|
||||
status);
|
||||
|
||||
return status;
|
||||
}
|
||||
@@ -150,7 +150,7 @@ NTSTATUS Xusb_PrepareHardware(WDFDEVICE Device)
|
||||
status = WdfDeviceAddQueryInterface(Device, &ifaceCfg);
|
||||
if (!NT_SUCCESS(status))
|
||||
{
|
||||
KdPrint((DRIVERNAME "Couldn't register unknown interface GUID: %08X-%04X-%04X-%02X%02X%02X%02X%02X%02X%02X%02X (status 0x%x)\n",
|
||||
TraceEvents(TRACE_LEVEL_ERROR, TRACE_XUSB, "Couldn't register unknown interface GUID: %08X-%04X-%04X-%02X%02X%02X%02X%02X%02X%02X%02X (Failed with status %!STATUS!)",
|
||||
GUID_DEVINTERFACE_XUSB_UNKNOWN_2.Data1,
|
||||
GUID_DEVINTERFACE_XUSB_UNKNOWN_2.Data2,
|
||||
GUID_DEVINTERFACE_XUSB_UNKNOWN_2.Data3,
|
||||
@@ -162,7 +162,7 @@ NTSTATUS Xusb_PrepareHardware(WDFDEVICE Device)
|
||||
GUID_DEVINTERFACE_XUSB_UNKNOWN_2.Data4[5],
|
||||
GUID_DEVINTERFACE_XUSB_UNKNOWN_2.Data4[6],
|
||||
GUID_DEVINTERFACE_XUSB_UNKNOWN_2.Data4[7],
|
||||
status));
|
||||
status);
|
||||
|
||||
return status;
|
||||
}
|
||||
@@ -190,7 +190,7 @@ NTSTATUS Xusb_PrepareHardware(WDFDEVICE Device)
|
||||
status = WdfDeviceAddQueryInterface(Device, &ifaceCfg);
|
||||
if (!NT_SUCCESS(status))
|
||||
{
|
||||
KdPrint((DRIVERNAME "WdfDeviceAddQueryInterface failed status 0x%x\n", status));
|
||||
TraceEvents(TRACE_LEVEL_ERROR, TRACE_XUSB, "WdfDeviceAddQueryInterface failed with status %!STATUS!", status);
|
||||
return status;
|
||||
}
|
||||
|
||||
@@ -205,7 +205,7 @@ NTSTATUS Xusb_AssignPdoContext(WDFDEVICE Device, PPDO_IDENTIFICATION_DESCRIPTION
|
||||
WDF_OBJECT_ATTRIBUTES_INIT(&attributes);
|
||||
attributes.ParentObject = Device;
|
||||
|
||||
KdPrint((DRIVERNAME "Initializing XUSB context...\n"));
|
||||
TraceEvents(TRACE_LEVEL_VERBOSE, TRACE_XUSB, "Initializing XUSB context...");
|
||||
|
||||
PXUSB_DEVICE_DATA xusb = XusbGetData(Device);
|
||||
|
||||
@@ -225,7 +225,7 @@ NTSTATUS Xusb_AssignPdoContext(WDFDEVICE Device, PPDO_IDENTIFICATION_DESCRIPTION
|
||||
status = WdfIoQueueCreate(Device, &holdingInQueueConfig, WDF_NO_OBJECT_ATTRIBUTES, &xusb->HoldingUsbInRequests);
|
||||
if (!NT_SUCCESS(status))
|
||||
{
|
||||
KdPrint((DRIVERNAME "WdfIoQueueCreate (HoldingUsbInRequests) failed 0x%x\n", status));
|
||||
TraceEvents(TRACE_LEVEL_ERROR, TRACE_XUSB, "WdfIoQueueCreate (HoldingUsbInRequests) failed with status %!STATUS!", status);
|
||||
return status;
|
||||
}
|
||||
|
||||
@@ -394,11 +394,11 @@ VOID Xusb_GetDeviceDescriptorType(PUSB_DEVICE_DESCRIPTOR pDescriptor, PPDO_DEVIC
|
||||
|
||||
VOID Xusb_SelectConfiguration(PUSBD_INTERFACE_INFORMATION pInfo)
|
||||
{
|
||||
KdPrint((DRIVERNAME ">> >> >> URB_FUNCTION_SELECT_CONFIGURATION: Length %d, Interface %d, Alternate %d, Pipes %d\n",
|
||||
TraceEvents(TRACE_LEVEL_INFORMATION, TRACE_XUSB, ">> >> >> URB_FUNCTION_SELECT_CONFIGURATION: Length %d, Interface %d, Alternate %d, Pipes %d",
|
||||
(int)pInfo->Length,
|
||||
(int)pInfo->InterfaceNumber,
|
||||
(int)pInfo->AlternateSetting,
|
||||
pInfo->NumberOfPipes));
|
||||
pInfo->NumberOfPipes);
|
||||
|
||||
pInfo->Class = 0xFF;
|
||||
pInfo->SubClass = 0x5D;
|
||||
@@ -424,11 +424,11 @@ VOID Xusb_SelectConfiguration(PUSBD_INTERFACE_INFORMATION pInfo)
|
||||
|
||||
pInfo = (PUSBD_INTERFACE_INFORMATION)((PCHAR)pInfo + pInfo->Length);
|
||||
|
||||
KdPrint((DRIVERNAME ">> >> >> URB_FUNCTION_SELECT_CONFIGURATION: Length %d, Interface %d, Alternate %d, Pipes %d\n",
|
||||
TraceEvents(TRACE_LEVEL_INFORMATION, TRACE_XUSB, ">> >> >> URB_FUNCTION_SELECT_CONFIGURATION: Length %d, Interface %d, Alternate %d, Pipes %d",
|
||||
(int)pInfo->Length,
|
||||
(int)pInfo->InterfaceNumber,
|
||||
(int)pInfo->AlternateSetting,
|
||||
pInfo->NumberOfPipes));
|
||||
pInfo->NumberOfPipes);
|
||||
|
||||
pInfo->Class = 0xFF;
|
||||
pInfo->SubClass = 0x5D;
|
||||
@@ -470,11 +470,11 @@ VOID Xusb_SelectConfiguration(PUSBD_INTERFACE_INFORMATION pInfo)
|
||||
|
||||
pInfo = (PUSBD_INTERFACE_INFORMATION)((PCHAR)pInfo + pInfo->Length);
|
||||
|
||||
KdPrint((DRIVERNAME ">> >> >> URB_FUNCTION_SELECT_CONFIGURATION: Length %d, Interface %d, Alternate %d, Pipes %d\n",
|
||||
TraceEvents(TRACE_LEVEL_INFORMATION, TRACE_XUSB, ">> >> >> URB_FUNCTION_SELECT_CONFIGURATION: Length %d, Interface %d, Alternate %d, Pipes %d",
|
||||
(int)pInfo->Length,
|
||||
(int)pInfo->InterfaceNumber,
|
||||
(int)pInfo->AlternateSetting,
|
||||
pInfo->NumberOfPipes));
|
||||
pInfo->NumberOfPipes);
|
||||
|
||||
pInfo->Class = 0xFF;
|
||||
pInfo->SubClass = 0x5D;
|
||||
@@ -492,11 +492,11 @@ VOID Xusb_SelectConfiguration(PUSBD_INTERFACE_INFORMATION pInfo)
|
||||
|
||||
pInfo = (PUSBD_INTERFACE_INFORMATION)((PCHAR)pInfo + pInfo->Length);
|
||||
|
||||
KdPrint((DRIVERNAME ">> >> >> URB_FUNCTION_SELECT_CONFIGURATION: Length %d, Interface %d, Alternate %d, Pipes %d\n",
|
||||
TraceEvents(TRACE_LEVEL_INFORMATION, TRACE_XUSB, ">> >> >> URB_FUNCTION_SELECT_CONFIGURATION: Length %d, Interface %d, Alternate %d, Pipes %d",
|
||||
(int)pInfo->Length,
|
||||
(int)pInfo->InterfaceNumber,
|
||||
(int)pInfo->AlternateSetting,
|
||||
pInfo->NumberOfPipes));
|
||||
pInfo->NumberOfPipes);
|
||||
|
||||
pInfo->Class = 0xFF;
|
||||
pInfo->SubClass = 0xFD;
|
||||
|
||||
Reference in New Issue
Block a user