dbgdev.h 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. /*++
  2. Copyright (c) 2014 Minoca Corp. All Rights Reserved
  3. Module Name:
  4. dbgdev.h
  5. Abstract:
  6. This header contains definitions for the hardware layer debug device
  7. support.
  8. Author:
  9. Evan Green 8-Apr-2014
  10. --*/
  11. //
  12. // ------------------------------------------------------------------- Includes
  13. //
  14. #include <minoca/kernel/kdusb.h>
  15. //
  16. // ---------------------------------------------------------------- Definitions
  17. //
  18. //
  19. // ------------------------------------------------------ Data Type Definitions
  20. //
  21. //
  22. // -------------------------------------------------------------------- Globals
  23. //
  24. //
  25. // -------------------------------------------------------- Function Prototypes
  26. //
  27. KSTATUS
  28. HlpInitializeDebugDevices (
  29. ULONG DebugDeviceIndex,
  30. PDEBUG_DEVICE_DESCRIPTION *DebugDevice
  31. );
  32. /*++
  33. Routine Description:
  34. This routine initializes the hardware layer's debug device support.
  35. This routine is called on the boot processor before the debugger is online.
  36. Arguments:
  37. DebugDeviceIndex - Supplies the index of successfully enumerated debug
  38. interfaces to return.
  39. DebugDevice - Supplies a pointer where a pointer to the debug device
  40. description will be returned on success.
  41. Return Value:
  42. Kernel status code.
  43. --*/
  44. VOID
  45. HlpTestUsbDebugInterface (
  46. VOID
  47. );
  48. /*++
  49. Routine Description:
  50. This routine runs the interface test on a USB debug interface if debugging
  51. the USB transport itself.
  52. Arguments:
  53. None.
  54. Return Value:
  55. None.
  56. --*/
  57. KSTATUS
  58. HlpDebugDeviceRegisterHardware (
  59. PDEBUG_DEVICE_DESCRIPTION Description
  60. );
  61. /*++
  62. Routine Description:
  63. This routine is called to register a new debug device with the system.
  64. Arguments:
  65. Description - Supplies a pointer to a structure describing the new debug
  66. device.
  67. Return Value:
  68. Status code.
  69. --*/
  70. KSTATUS
  71. HlpDebugUsbHostRegisterHardware (
  72. PDEBUG_USB_HOST_DESCRIPTION Description
  73. );
  74. /*++
  75. Routine Description:
  76. This routine is called to register a new debug USB host controller with the
  77. system.
  78. Arguments:
  79. Description - Supplies a pointer to a structure describing the new debug
  80. device.
  81. Return Value:
  82. Status code.
  83. --*/
  84. KSTATUS
  85. HlpArchInitializeDebugDevices (
  86. VOID
  87. );
  88. /*++
  89. Routine Description:
  90. This routine performs architecture-specific initialization for the serial
  91. subsystem.
  92. Arguments:
  93. None.
  94. Return Value:
  95. Status code.
  96. --*/