Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

52 lines
1.8 KiB

  1. // Define an Interface Guid to access the game port enumerator
  2. //
  3. #undef FAR
  4. #define FAR
  5. #undef PHYSICAL_ADDRESS
  6. #define PHYSICAL_ADDRESS LARGE_INTEGER
  7. #ifdef NT50
  8. //DEFINE_GUID (GUID_CTMPORT_BUS_ENUMERATOR, 0x11223344, 0x684a, 0x11d0, 0xd6, 0xf6, 0x00, 0xa0, 0xc9, 0x0f, 0x57, 0xda);
  9. // 11223344-684a-11d0-b6f6-00a0c90f57da
  10. #include <initguid.h>
  11. // GUIDs for the board & ports
  12. //
  13. DEFINE_GUID (GUID_CTMPORT_MPS, 0x50906cb8, 0xba12, 0x11d1, 0xbf, 0x5d, 0x00, 0x00, 0xf8, 0x05, 0xf5, 0x30);
  14. // 50906cb8-ba12-11d1-bf5d-0000f805f530
  15. //DEFINE_GUID (GUID_CLASS_COMPORT, 0x4d36e978, 0xe325, 0x11ce, 0xbf, 0xc1, 0x08, 0x00, 0x2b, 0xe1, 0x03, 0x18);
  16. // 4d36e978-e325-11ce-bfc1-08002be10318
  17. // GUID_CLASS_COMPORT changed for Whistler
  18. DEFINE_GUID (GUID_CLASS_COMPORT, 0x86e0d1e0, 0x8089, 0x11d0, 0x9c, 0xe4, 0x08, 0x00, 0x3e, 0x30, 0x1f, 0x73);
  19. // 86e0d1e0-8089-11d0-9ce4-08003e301f73
  20. #endif
  21. NTSTATUS SerialPnpDispatch(IN PDEVICE_OBJECT Fdo, IN PIRP Irp);
  22. NTSTATUS SerialPowerDispatch(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp);
  23. VOID SerialKillPendingIrps(PDEVICE_OBJECT DeviceObject);
  24. BOOLEAN SerialIRPPrologue(IN PSERIAL_DEVICE_EXTENSION PDevExt);
  25. VOID SerialIRPEpilogue(IN PSERIAL_DEVICE_EXTENSION PDevExt);
  26. NTSTATUS
  27. SerialIoCallDriver(PSERIAL_DEVICE_EXTENSION PDevExt, PDEVICE_OBJECT PDevObj,
  28. PIRP PIrp);
  29. NTSTATUS
  30. SerialPoCallDriver(PSERIAL_DEVICE_EXTENSION PDevExt, PDEVICE_OBJECT PDevObj,
  31. PIRP PIrp);
  32. #ifdef NT50
  33. #define SerialCompleteRequest(PDevExt, PIrp, PriBoost) \
  34. { \
  35. IoCompleteRequest((PIrp), (PriBoost)); \
  36. SerialIRPEpilogue((PDevExt)); \
  37. }
  38. #else
  39. #define SerialCompleteRequest(PDevExt, PIrp, PriBoost) \
  40. { \
  41. IoCompleteRequest((PIrp), (PriBoost)); \
  42. InterlockedDecrement(&((PDevExt)->PendingIRPCnt)); \
  43. }
  44. #endif