Index: ntoskrnl/io/iomgr/driver.c =================================================================== --- ntoskrnl/io/iomgr/driver.c (revision 61017) +++ ntoskrnl/io/iomgr/driver.c (working copy) @@ -1967,6 +1967,19 @@ return; } + /* Check if we are pnp driver loaded for legacy device. */ + if(!(DriverObject->Flags & DRVO_LEGACY_DRIVER)){ + /* And unset some flags to make pnp driver initialize property. */ + DPRINT1("Unset DNF_LEGACY_DRIVER\n"); + DPRINT1("Unset DNF_STARTED\n"); + DeviceNode->Flags = DeviceNode->Flags & ~DNF_LEGACY_DRIVER; + DeviceNode->Flags = DeviceNode->Flags & ~DNF_STARTED; + } + else + { + DPRINT1("We have DRVO_LEGACY_DRIVER\n"); + } + /* Initialize and start device */ IopInitializeDevice(DeviceNode, DriverObject); Status = IopStartDevice(DeviceNode);