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.

101 lines
3.0 KiB

  1. /****************************************************************************
  2. ******************************************************************************
  3. *
  4. * ******************************************
  5. * * Copyright (c) 1995, Cirrus Logic, Inc. *
  6. * * All Rights Reserved *
  7. * ******************************************
  8. *
  9. * PROJECT: Laguna I (CL-GD546x) -
  10. *
  11. * FILE: lgddmsg.h
  12. *
  13. * AUTHOR: Benny Ng
  14. *
  15. * DESCRIPTION:
  16. * This is the header file which will define the custom message between
  17. * the NT app and display driver.
  18. *
  19. * MODULES:
  20. *
  21. * REVISION HISTORY:
  22. * 11/15/95 Benny Ng Initial version
  23. *
  24. ****************************************************************************
  25. ****************************************************************************/
  26. #define READ_OPR 1
  27. #define WRITE_OPR 2
  28. #define BYTE_ACCESS 1
  29. #define WORD_ACCESS 2
  30. #define DWORD_ACCESS 3
  31. // =====================================================================
  32. // Define structure used to call the BIOS int 10 function
  33. // =====================================================================
  34. typedef struct _VIDEO_X86_BIOS_ARGUMENTS {
  35. ULONG Eax;
  36. ULONG Ebx;
  37. ULONG Ecx;
  38. ULONG Edx;
  39. ULONG Esi;
  40. ULONG Edi;
  41. ULONG Ebp;
  42. } VIDEO_X86_BIOS_ARGUMENTS, *PVIDEO_X86_BIOS_ARGUMENTS;
  43. typedef struct _MMREG_ACCESS {
  44. ULONG Offset;
  45. ULONG ReadVal;
  46. ULONG WriteVal;
  47. ULONG RdWrFlag; // 1=Read, 2=Write
  48. ULONG AccessType; // 1=Byte, 2=Word, 3=Dword
  49. } MMREG_ACCESS, *PMMREG_ACCESS;
  50. // =====================================================================
  51. // Define structure used for power manager
  52. // =====================================================================
  53. #ifndef __LGPWRMGR_H__
  54. #define __LGPWRMGR_H__
  55. #define ENABLE 0x1
  56. #define DISABLE 0x0
  57. #define MOD_2D 0x0
  58. #define MOD_STRETCH 0x1
  59. #define MOD_3D 0x2
  60. #define MOD_EXTMODE 0x3
  61. #define MOD_VGA 0x4
  62. #define MOD_RAMDAC 0x5
  63. #define MOD_VPORT 0x6
  64. #define MOD_VW 0x7
  65. #define MOD_TVOUT 0x8
  66. #define TOTAL_MOD MOD_TVOUT+1
  67. typedef struct _LGPM_IN_STRUCT {
  68. ULONG arg1;
  69. ULONG arg2;
  70. } LGPM_IN_STRUCT, *PLGPM_IN_STRUCT;
  71. typedef struct _LGPM_OUT_STRUCT {
  72. BOOL status;
  73. ULONG retval;
  74. } LGPM_OUT_STRUCT, *PLGPM_OUT_STRUCT;
  75. #endif // #ifndef __LGPWRMGR_H__
  76. // =====================================================================
  77. #define IS_CIRRUS_DRIVER 9005
  78. #define BIOS_CALL_REQUEST 0xF001
  79. #define GET_CL_MMAP_ADDR 0xF002
  80. #define ID_LGPM_SETHWMODULESTATE 0xF003
  81. #define ID_LGPM_GETHWMODULESTATE 0xF004
  82. #define GET_VIDEO_MEM_SIZE 0xF006
  83. #define GET_PCI_VEN_DEV_ID 0xF007
  84. #define CRTC_READ 0xF008
  85. #define GET_BIOS_VERSION 0xF009