XGIfb.h 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. #ifndef _LINUX_XGIFB
  2. #define _LINUX_XGIFB
  3. #include <linux/ioctl.h>
  4. #include <linux/types.h>
  5. #define DISPTYPE_CRT1 0x00000008L
  6. #define DISPTYPE_CRT2 0x00000004L
  7. #define DISPTYPE_LCD 0x00000002L
  8. #define DISPTYPE_TV 0x00000001L
  9. #define DISPTYPE_DISP1 DISPTYPE_CRT1
  10. #define DISPTYPE_DISP2 (DISPTYPE_CRT2 | DISPTYPE_LCD | DISPTYPE_TV)
  11. #define DISPMODE_SINGLE 0x00000020L
  12. #define DISPMODE_MIRROR 0x00000010L
  13. #define DISPMODE_DUALVIEW 0x00000040L
  14. #define HASVB_NONE 0x00
  15. #define HASVB_301 0x01
  16. #define HASVB_LVDS 0x02
  17. #define HASVB_TRUMPION 0x04
  18. #define HASVB_LVDS_CHRONTEL 0x10
  19. #define HASVB_302 0x20
  20. #define HASVB_303 0x40
  21. #define HASVB_CHRONTEL 0x80
  22. #ifndef XGIFB_ID
  23. #define XGIFB_ID 0x53495346 /* Identify myself with 'XGIF' */
  24. #endif
  25. enum XGI_CHIP_TYPE {
  26. XG40 = 32,
  27. XG41,
  28. XG42,
  29. XG45,
  30. XG20 = 48,
  31. XG21,
  32. XG27,
  33. };
  34. enum xgi_tvtype {
  35. TVMODE_NTSC = 0,
  36. TVMODE_PAL,
  37. TVMODE_HIVISION,
  38. TVTYPE_PALM, /* vicki@030226 */
  39. TVTYPE_PALN, /* vicki@030226 */
  40. TVTYPE_NTSCJ, /* vicki@030226 */
  41. TVMODE_TOTAL
  42. };
  43. enum xgi_tv_plug { /* vicki@030226 */
  44. /* TVPLUG_Legacy = 0, */
  45. /* TVPLUG_COMPOSITE, */
  46. /* TVPLUG_SVIDEO, */
  47. /* TVPLUG_SCART, */
  48. /* TVPLUG_TOTAL */
  49. TVPLUG_UNKNOWN = 0,
  50. TVPLUG_COMPOSITE = 1,
  51. TVPLUG_SVIDEO = 2,
  52. TVPLUG_COMPOSITE_AND_SVIDEO = 3,
  53. TVPLUG_SCART = 4,
  54. TVPLUG_YPBPR_525i = 5,
  55. TVPLUG_YPBPR_525P = 6,
  56. TVPLUG_YPBPR_750P = 7,
  57. TVPLUG_YPBPR_1080i = 8,
  58. TVPLUG_TOTAL
  59. };
  60. struct video_info {
  61. int chip_id;
  62. unsigned int video_size;
  63. unsigned long video_base;
  64. char *video_vbase;
  65. unsigned long mmio_base;
  66. unsigned long mmio_size;
  67. char *mmio_vbase;
  68. unsigned long vga_base;
  69. unsigned long mtrr;
  70. int video_bpp;
  71. int video_cmap_len;
  72. int video_width;
  73. int video_height;
  74. int video_vwidth;
  75. int video_vheight;
  76. int org_x;
  77. int org_y;
  78. int video_linelength;
  79. unsigned int refresh_rate;
  80. unsigned long disp_state;
  81. unsigned char hasVB;
  82. unsigned char TV_type;
  83. unsigned char TV_plug;
  84. enum XGI_CHIP_TYPE chip;
  85. unsigned char revision_id;
  86. unsigned short DstColor;
  87. unsigned long XGI310_AccelDepth;
  88. unsigned long CommandReg;
  89. unsigned int pcibus;
  90. unsigned int pcislot;
  91. unsigned int pcifunc;
  92. unsigned short subsysvendor;
  93. unsigned short subsysdevice;
  94. char reserved[236];
  95. };
  96. extern struct video_info xgi_video_info;
  97. #endif