Activate serial device interface only at the very end of IRP_MN_START_DEVICE

svn path=/trunk/; revision=20954
This commit is contained in:
Hervé Poussineau 2006-01-20 17:41:59 +00:00
parent 43744d9581
commit d5fbbf9cd4

View file

@ -242,15 +242,6 @@ SerialPnpStartDevice(
return Status;
}
/* Activate serial interface */
Status = IoSetDeviceInterfaceState(&DeviceExtension->SerialInterfaceName, TRUE);
if (!NT_SUCCESS(Status))
{
DPRINT("Serial: IoSetDeviceInterfaceState() failed with status 0x%08x\n", Status);
IoDeleteSymbolicLink(&LinkName);
return Status;
}
/* Connect interrupt and enable them */
Status = IoConnectInterrupt(
&DeviceExtension->Interrupt, SerialInterruptService,
@ -289,6 +280,10 @@ SerialPnpStartDevice(
DeviceExtension->MCR |= SR_MCR_DTR | SR_MCR_RTS;
WRITE_PORT_UCHAR(SER_MCR(ComPortBase), DeviceExtension->MCR);
/* Activate serial interface */
IoSetDeviceInterfaceState(&DeviceExtension->SerialInterfaceName, TRUE);
/* We don't really care if the call succeeded or not... */
return STATUS_SUCCESS;
}