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.

147 lines
4.6 KiB

  1. /****************************************************************************
  2. *****************************************************************************
  3. *
  4. * ******************************************
  5. * * Copyright (c) 1995, Cirrus Logic, Inc. *
  6. * * All Rights Reserved *
  7. * ******************************************
  8. *
  9. * PROJECT: Laguna I (CL-GD5462) -
  10. *
  11. * FILE: clioctl.h
  12. *
  13. * AUTHOR: Benny Ng
  14. *
  15. * DESCRIPTION:
  16. * This module contains the definitions of IOCTL commands
  17. * between the NT miniport and the display.
  18. *
  19. * MODULES:
  20. *
  21. * REVISION HISTORY:
  22. * $Log: X:/log/laguna/nt35/displays/cl546x/CLIOCTL.H $
  23. *
  24. * Rev 1.14 Mar 25 1998 17:56:54 frido
  25. * Added IOCTL_STALL.
  26. *
  27. * Rev 1.13 Dec 10 1997 13:24:54 frido
  28. * Merged from 1.62 branch.
  29. *
  30. * Rev 1.12.1.0 Nov 10 1997 11:25:14 phyang
  31. * Added 5 IOCTL code for utilities to update registry values.
  32. *
  33. * Rev 1.12 Nov 03 1997 16:44:24 phyang
  34. * Added IOCTL_GET_AGPDATASTREAMING.
  35. *
  36. * Rev 1.11 28 Aug 1997 15:16:06 noelv
  37. *
  38. * Merged with miniport CLIOCTL.H. Now we only use this one.
  39. *
  40. * Rev 1.10 23 Jul 1997 09:18:30 bennyn
  41. *
  42. * Added IOCTL_GET_BIOS_VERSION
  43. *
  44. * Rev 1.9 21 Jul 1997 16:21:06 bennyn
  45. * Added IOCTL for getting EDID data
  46. *
  47. * Rev 1.8 20 Jun 1997 13:33:18 bennyn
  48. *
  49. * Added power manager data structure and #define
  50. *
  51. * Rev 1.7 23 Apr 1997 07:38:26 SueS
  52. * Added IOCTL for enabling memory-mapped I/O access to PCI
  53. * configuration registers.
  54. *
  55. * Rev 1.6 21 Mar 1997 13:41:20 noelv
  56. * Combined LOG_CALLS, LOG_WRITES and LOG_QFREE into ENABLE_LOG_FILE
  57. *
  58. * Rev 1.5 18 Mar 1997 09:28:58 bennyn
  59. * Added Intel DPMS support
  60. *
  61. * Rev 1.4 26 Nov 1996 10:15:24 SueS
  62. * Added IOCTL for closing the log file.
  63. *
  64. * Rev 1.3 13 Nov 1996 17:06:58 SueS
  65. * Added two IOCTL codes for notifying the miniport driver on
  66. * file logging functions.
  67. * 11/16/95 Benny Ng Initial version
  68. *
  69. ****************************************************************************
  70. ****************************************************************************/
  71. //---------------------------------------------------------------------------
  72. //
  73. // The following macro(CTL_CODE) is defined in WINIOCTL.H. That file states
  74. // that functions 2048-4095 are reserved for "customers". So I picked an
  75. // arbitrary value of 0x900=2304.
  76. //
  77. #define IOCTL_CL_STRING_DISPLAY \
  78. CTL_CODE(FILE_DEVICE_VIDEO, 0x900, METHOD_BUFFERED, FILE_ANY_ACCESS)
  79. #define IOCTL_CL_GET_COMMON_BUFFER \
  80. CTL_CODE(FILE_DEVICE_VIDEO, 0x902, METHOD_BUFFERED, FILE_ANY_ACCESS)
  81. #if ENABLE_LOG_FILE
  82. #define IOCTL_CL_CREATE_LOG_FILE \
  83. CTL_CODE(FILE_DEVICE_VIDEO, 0x903, METHOD_BUFFERED, FILE_ANY_ACCESS)
  84. #define IOCTL_CL_WRITE_LOG_FILE \
  85. CTL_CODE(FILE_DEVICE_VIDEO, 0x904, METHOD_BUFFERED, FILE_ANY_ACCESS)
  86. #define IOCTL_CL_CLOSE_LOG_FILE \
  87. CTL_CODE(FILE_DEVICE_VIDEO, 0x905, METHOD_BUFFERED, FILE_ANY_ACCESS)
  88. #endif
  89. #define IOCTL_VIDEO_ENABLE_PCI_MMIO \
  90. CTL_CODE(FILE_DEVICE_VIDEO, 0x906, METHOD_BUFFERED, FILE_ANY_ACCESS)
  91. #define IOCTL_SET_HW_MODULE_POWER_STATE \
  92. CTL_CODE(FILE_DEVICE_VIDEO, 0x907, METHOD_BUFFERED, FILE_ANY_ACCESS)
  93. #define IOCTL_GET_HW_MODULE_POWER_STATE \
  94. CTL_CODE(FILE_DEVICE_VIDEO, 0x908, METHOD_BUFFERED, FILE_ANY_ACCESS)
  95. #define IOCTL_GET_AGPDATASTREAMING \
  96. CTL_CODE(FILE_DEVICE_VIDEO, 0x90B, METHOD_BUFFERED, FILE_ANY_ACCESS)
  97. #define IOCTL_STALL \
  98. CTL_CODE(FILE_DEVICE_VIDEO, 0x911, METHOD_BUFFERED, FILE_ANY_ACCESS)
  99. // =====================================================================
  100. // Define structure used for power manager
  101. // =====================================================================
  102. #ifndef __LGPWRMGR_H__
  103. #define __LGPWRMGR_H__
  104. #define ENABLE 0x1
  105. #define DISABLE 0x0
  106. #define ACPI_D0 0x0
  107. #define ACPI_D1 0x1
  108. #define ACPI_D2 0x2
  109. #define ACPI_D3 0x3
  110. #define TOTAL_ACPI 4
  111. #define MOD_2D 0x0
  112. #define MOD_STRETCH 0x1
  113. #define MOD_3D 0x2
  114. #define MOD_EXTMODE 0x3
  115. #define MOD_VGA 0x4
  116. #define MOD_RAMDAC 0x5
  117. #define MOD_VPORT 0x6
  118. #define MOD_VW 0x7
  119. #define MOD_TVOUT 0x8
  120. #define TOTAL_MOD MOD_TVOUT+1
  121. typedef struct _LGPM_IN_STRUCT {
  122. ULONG arg1;
  123. ULONG arg2;
  124. } LGPM_IN_STRUCT, *PLGPM_IN_STRUCT;
  125. typedef struct _LGPM_OUT_STRUCT {
  126. BOOL status;
  127. ULONG retval;
  128. } LGPM_OUT_STRUCT, *PLGPM_OUT_STRUCT;
  129. #endif // #ifndef __LGPWRMGR_H__
  130.