grfioctl.h 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. /* Architecture specific parts of HP's STI (framebuffer) driver.
  2. * Structures are HP-UX compatible for XFree86 usage.
  3. *
  4. * Linux/PA-RISC Project (http://www.parisc-linux.org/)
  5. * Copyright (C) 2001 Helge Deller (deller a parisc-linux org)
  6. *
  7. * This program is free software; you can redistribute it and/or modify
  8. * it under the terms of the GNU General Public License as published by
  9. * the Free Software Foundation; either version 2 of the License, or
  10. * (at your option) any later version.
  11. *
  12. * This program is distributed in the hope that it will be useful,
  13. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  14. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  15. * GNU General Public License for more details.
  16. *
  17. * You should have received a copy of the GNU General Public License
  18. * along with this program; if not, write to the Free Software
  19. * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  20. */
  21. #ifndef __ASM_PARISC_GRFIOCTL_H
  22. #define __ASM_PARISC_GRFIOCTL_H
  23. /* upper 32 bits of graphics id (HP/UX identifier) */
  24. #define GRFGATOR 8
  25. #define S9000_ID_S300 9
  26. #define GRFBOBCAT 9
  27. #define GRFCATSEYE 9
  28. #define S9000_ID_98720 10
  29. #define GRFRBOX 10
  30. #define S9000_ID_98550 11
  31. #define GRFFIREEYE 11
  32. #define S9000_ID_A1096A 12
  33. #define GRFHYPERION 12
  34. #define S9000_ID_FRI 13
  35. #define S9000_ID_98730 14
  36. #define GRFDAVINCI 14
  37. #define S9000_ID_98705 0x26C08070 /* Tigershark */
  38. #define S9000_ID_98736 0x26D148AB
  39. #define S9000_ID_A1659A 0x26D1482A /* CRX 8 plane color (=ELK) */
  40. #define S9000_ID_ELK S9000_ID_A1659A
  41. #define S9000_ID_A1439A 0x26D148EE /* CRX24 = CRX+ (24-plane color) */
  42. #define S9000_ID_A1924A 0x26D1488C /* GRX gray-scale */
  43. #define S9000_ID_ELM S9000_ID_A1924A
  44. #define S9000_ID_98765 0x27480DEF
  45. #define S9000_ID_ELK_768 0x27482101
  46. #define S9000_ID_STINGER 0x27A4A402
  47. #define S9000_ID_TIMBER 0x27F12392 /* Bushmaster (710) Graphics */
  48. #define S9000_ID_TOMCAT 0x27FCCB6D /* dual-headed ELK (Dual CRX) */
  49. #define S9000_ID_ARTIST 0x2B4DED6D /* Artist (Gecko/712 & 715) onboard Graphics */
  50. #define S9000_ID_HCRX 0x2BCB015A /* Hyperdrive/Hyperbowl (A4071A) Graphics */
  51. #define CRX24_OVERLAY_PLANES 0x920825AA /* Overlay planes on CRX24 */
  52. #define CRT_ID_ELK_1024 S9000_ID_ELK_768 /* Elk 1024x768 CRX */
  53. #define CRT_ID_ELK_1280 S9000_ID_A1659A /* Elk 1280x1024 CRX */
  54. #define CRT_ID_ELK_1024DB 0x27849CA5 /* Elk 1024x768 double buffer */
  55. #define CRT_ID_ELK_GS S9000_ID_A1924A /* Elk 1280x1024 GreyScale */
  56. #define CRT_ID_CRX24 S9000_ID_A1439A /* Piranha */
  57. #define CRT_ID_VISUALIZE_EG 0x2D08C0A7 /* Graffiti, A4450A (built-in B132+/B160L) */
  58. #define CRT_ID_THUNDER 0x2F23E5FC /* Thunder 1 VISUALIZE 48*/
  59. #define CRT_ID_THUNDER2 0x2F8D570E /* Thunder 2 VISUALIZE 48 XP*/
  60. #define CRT_ID_HCRX S9000_ID_HCRX /* Hyperdrive HCRX */
  61. #define CRT_ID_CRX48Z S9000_ID_STINGER /* Stinger */
  62. #define CRT_ID_DUAL_CRX S9000_ID_TOMCAT /* Tomcat */
  63. #define CRT_ID_PVRX S9000_ID_98705 /* Tigershark */
  64. #define CRT_ID_TIMBER S9000_ID_TIMBER /* Timber (710 builtin) */
  65. #define CRT_ID_TVRX S9000_ID_98765 /* TVRX (gto/falcon) */
  66. #define CRT_ID_ARTIST S9000_ID_ARTIST /* Artist */
  67. #define CRT_ID_SUMMIT 0x2FC1066B /* Summit FX2, FX4, FX6 ... */
  68. #define CRT_ID_LEGO 0x35ACDA30 /* Lego FX5, FX10 ... */
  69. #define CRT_ID_PINNACLE 0x35ACDA16 /* Pinnacle FXe */
  70. /* structure for ioctl(GCDESCRIBE) */
  71. #define gaddr_t unsigned long /* FIXME: PA2.0 (64bit) portable ? */
  72. struct grf_fbinfo {
  73. unsigned int id; /* upper 32 bits of graphics id */
  74. unsigned int mapsize; /* mapped size of framebuffer */
  75. unsigned int dwidth, dlength;/* x and y sizes */
  76. unsigned int width, length; /* total x and total y size */
  77. unsigned int xlen; /* x pitch size */
  78. unsigned int bpp, bppu; /* bits per pixel and used bpp */
  79. unsigned int npl, nplbytes; /* # of planes and bytes per plane */
  80. char name[32]; /* name of the device (from ROM) */
  81. unsigned int attr; /* attributes */
  82. gaddr_t fbbase, regbase;/* framebuffer and register base addr */
  83. gaddr_t regions[6]; /* region bases */
  84. };
  85. #define GCID _IOR('G', 0, int)
  86. #define GCON _IO('G', 1)
  87. #define GCOFF _IO('G', 2)
  88. #define GCAON _IO('G', 3)
  89. #define GCAOFF _IO('G', 4)
  90. #define GCMAP _IOWR('G', 5, int)
  91. #define GCUNMAP _IOWR('G', 6, int)
  92. #define GCMAP_HPUX _IO('G', 5)
  93. #define GCUNMAP_HPUX _IO('G', 6)
  94. #define GCLOCK _IO('G', 7)
  95. #define GCUNLOCK _IO('G', 8)
  96. #define GCLOCK_MINIMUM _IO('G', 9)
  97. #define GCUNLOCK_MINIMUM _IO('G', 10)
  98. #define GCSTATIC_CMAP _IO('G', 11)
  99. #define GCVARIABLE_CMAP _IO('G', 12)
  100. #define GCTERM _IOWR('G',20,int) /* multi-headed Tomcat */
  101. #define GCDESCRIBE _IOR('G', 21, struct grf_fbinfo)
  102. #define GCFASTLOCK _IO('G', 26)
  103. #endif /* __ASM_PARISC_GRFIOCTL_H */