@@ -62,7 +62,7 @@ USBHUB_AddDevice(
62
62
PDEVICE_OBJECT DeviceObject ;
63
63
PHUB_DEVICE_EXTENSION HubDeviceExtension ;
64
64
NTSTATUS Status ;
65
- DPRINT ("USBHUB: AddDevice\n" );
65
+ DPRINT ("USBHUB: AddDevice (%p) \n" , PhysicalDeviceObject );
66
66
//
67
67
// Create the Device Object
68
68
//
@@ -166,6 +166,18 @@ USBHUB_DispatchDeviceControl(
166
166
return USBHUB_IrpStub (DeviceObject , Irp );
167
167
}
168
168
169
+ NTSTATUS NTAPI
170
+ USBHUB_DispatchSystemControl (
171
+ PDEVICE_OBJECT DeviceObject ,
172
+ PIRP Irp )
173
+ {
174
+ DPRINT ("Usbhub: DispatchSystemControl\n" );
175
+ if (((PHUB_DEVICE_EXTENSION )DeviceObject -> DeviceExtension )-> Common .IsFDO )
176
+ return USBHUB_IrpStub (DeviceObject , Irp );
177
+ else
178
+ return USBHUB_IrpStub (DeviceObject , Irp );
179
+ }
180
+
169
181
NTSTATUS NTAPI
170
182
USBHUB_DispatchInternalDeviceControl (
171
183
PDEVICE_OBJECT DeviceObject ,
@@ -275,6 +287,7 @@ DriverEntry(
275
287
DriverObject -> MajorFunction [IRP_MJ_CLOSE ] = USBHUB_Close ;
276
288
DriverObject -> MajorFunction [IRP_MJ_CLEANUP ] = USBHUB_Cleanup ;
277
289
DriverObject -> MajorFunction [IRP_MJ_DEVICE_CONTROL ] = USBHUB_DispatchDeviceControl ;
290
+ DriverObject -> MajorFunction [IRP_MJ_SYSTEM_CONTROL ] = USBHUB_DispatchSystemControl ;
278
291
DriverObject -> MajorFunction [IRP_MJ_INTERNAL_DEVICE_CONTROL ] = USBHUB_DispatchInternalDeviceControl ;
279
292
DriverObject -> MajorFunction [IRP_MJ_PNP ] = USBHUB_DispatchPnp ;
280
293
DriverObject -> MajorFunction [IRP_MJ_POWER ] = USBHUB_DispatchPower ;
0 commit comments