Source code of Windows XP (NT5)
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.

180 lines
2.2 KiB

  1. /*++
  2. Copyright (c) 1998 Microsoft Corporation
  3. Module Name:
  4. DBCLIB.H
  5. Abstract:
  6. common structures for DBC port drivers.
  7. Environment:
  8. Kernel & user mode
  9. Revision History:
  10. 04-13-98 : created
  11. --*/
  12. #ifndef __DBCLIB_H__
  13. #define __DBCLIB_H__
  14. #define DBCLASS_VERSION 0x10000002
  15. #ifndef DBCLASS
  16. /*
  17. Services
  18. */
  19. DECLSPEC_IMPORT
  20. NTSTATUS
  21. DBCLASS_RegisterController(
  22. IN ULONG DbclassVersion,
  23. IN PDEVICE_OBJECT ControllerFdo,
  24. IN PDEVICE_OBJECT TopOfStack,
  25. IN PDEVICE_OBJECT ControllerPdo,
  26. IN ULONG ControllerSig
  27. );
  28. /*++
  29. Routine Description:
  30. This function registers a Device Bay contoller
  31. driver or filter with the class driver
  32. Arguments:
  33. ControllerFdo -
  34. TopOfStack -
  35. Return Value:
  36. --*/
  37. DECLSPEC_IMPORT
  38. NTSTATUS
  39. DBCLASS_UnRegisterController(
  40. IN PDEVICE_OBJECT ControllerFdo,
  41. IN PDEVICE_OBJECT TopOfStack
  42. );
  43. /*++
  44. Routine Description:
  45. This function registers a Device Bay contoller
  46. driver or filter with the class driver
  47. Arguments:
  48. ControllerFdo -
  49. TopOfStack -
  50. Return Value:
  51. --*/
  52. DECLSPEC_IMPORT
  53. NTSTATUS
  54. DBCLASS_ClassDispatch(
  55. IN PDEVICE_OBJECT ControllerFdo,
  56. IN PIRP Irp,
  57. IN PBOOLEAN HandledByClass
  58. );
  59. /*++
  60. Routine Description:
  61. Only called by port driver,
  62. Arguments:
  63. ControllerFdo -
  64. Return Value:
  65. --*/
  66. DECLSPEC_IMPORT
  67. NTSTATUS
  68. DBCLASS_FilterDispatch(
  69. IN PDEVICE_OBJECT ControllerFdo,
  70. IN PIRP Irp
  71. );
  72. /*++
  73. Routine Description:
  74. Only called by filter driver,
  75. Arguments:
  76. ControllerFdo -
  77. Return Value:
  78. --*/
  79. DECLSPEC_IMPORT
  80. NTSTATUS
  81. DBCLASS_SetD0_Complete(
  82. PDEVICE_OBJECT DeviceObject,
  83. PIRP Irp
  84. );
  85. /*++
  86. Routine Description:
  87. called by port driver when set D0 power Irp completes
  88. Arguments:
  89. ControllerFdo -
  90. Return Value:
  91. --*/
  92. DECLSPEC_IMPORT
  93. NTSTATUS
  94. DBCLASS_RegisterBusFilter(
  95. IN ULONG DbclassVersion,
  96. IN PDRIVER_OBJECT BusFilterDriverObject,
  97. IN PDEVICE_OBJECT FilterFdo
  98. );
  99. /*++
  100. Routine Description:
  101. Register a filter PDO with the class driver
  102. Arguments:
  103. FilterFdo -
  104. Return Value:
  105. --*/
  106. #endif /* DBCLASS */
  107. #endif /* __DBCLIB_H__ */