Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 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 | |
| 22 | #ifndef __ASM_PARISC_GRFIOCTL_H |
| 23 | #define __ASM_PARISC_GRFIOCTL_H |
| 24 | |
| 25 | /* upper 32 bits of graphics id (HP/UX identifier) */ |
| 26 | |
| 27 | #define GRFGATOR 8 |
| 28 | #define S9000_ID_S300 9 |
| 29 | #define GRFBOBCAT 9 |
| 30 | #define GRFCATSEYE 9 |
| 31 | #define S9000_ID_98720 10 |
| 32 | #define GRFRBOX 10 |
| 33 | #define S9000_ID_98550 11 |
| 34 | #define GRFFIREEYE 11 |
| 35 | #define S9000_ID_A1096A 12 |
| 36 | #define GRFHYPERION 12 |
| 37 | #define S9000_ID_FRI 13 |
| 38 | #define S9000_ID_98730 14 |
| 39 | #define GRFDAVINCI 14 |
| 40 | #define S9000_ID_98705 0x26C08070 /* Tigershark */ |
| 41 | #define S9000_ID_98736 0x26D148AB |
| 42 | #define S9000_ID_A1659A 0x26D1482A /* CRX 8 plane color (=ELK) */ |
| 43 | #define S9000_ID_ELK S9000_ID_A1659A |
| 44 | #define S9000_ID_A1439A 0x26D148EE /* CRX24 = CRX+ (24-plane color) */ |
| 45 | #define S9000_ID_A1924A 0x26D1488C /* GRX gray-scale */ |
| 46 | #define S9000_ID_ELM S9000_ID_A1924A |
| 47 | #define S9000_ID_98765 0x27480DEF |
| 48 | #define S9000_ID_ELK_768 0x27482101 |
| 49 | #define S9000_ID_STINGER 0x27A4A402 |
| 50 | #define S9000_ID_TIMBER 0x27F12392 /* Bushmaster (710) Graphics */ |
| 51 | #define S9000_ID_TOMCAT 0x27FCCB6D /* dual-headed ELK (Dual CRX) */ |
| 52 | #define S9000_ID_ARTIST 0x2B4DED6D /* Artist (Gecko/712 & 715) onboard Graphics */ |
| 53 | #define S9000_ID_HCRX 0x2BCB015A /* Hyperdrive/Hyperbowl (A4071A) Graphics */ |
| 54 | #define CRX24_OVERLAY_PLANES 0x920825AA /* Overlay planes on CRX24 */ |
| 55 | |
| 56 | #define CRT_ID_ELK_1024 S9000_ID_ELK_768 /* Elk 1024x768 CRX */ |
| 57 | #define CRT_ID_ELK_1280 S9000_ID_A1659A /* Elk 1280x1024 CRX */ |
| 58 | #define CRT_ID_ELK_1024DB 0x27849CA5 /* Elk 1024x768 double buffer */ |
| 59 | #define CRT_ID_ELK_GS S9000_ID_A1924A /* Elk 1280x1024 GreyScale */ |
| 60 | #define CRT_ID_CRX24 S9000_ID_A1439A /* Piranha */ |
| 61 | #define CRT_ID_VISUALIZE_EG 0x2D08C0A7 /* Graffiti (built-in B132+/B160L) */ |
| 62 | #define CRT_ID_THUNDER 0x2F23E5FC /* Thunder 1 VISUALIZE 48*/ |
| 63 | #define CRT_ID_THUNDER2 0x2F8D570E /* Thunder 2 VISUALIZE 48 XP*/ |
| 64 | #define CRT_ID_HCRX S9000_ID_HCRX /* Hyperdrive HCRX */ |
| 65 | #define CRT_ID_CRX48Z S9000_ID_STINGER /* Stinger */ |
| 66 | #define CRT_ID_DUAL_CRX S9000_ID_TOMCAT /* Tomcat */ |
| 67 | #define CRT_ID_PVRX S9000_ID_98705 /* Tigershark */ |
| 68 | #define CRT_ID_TIMBER S9000_ID_TIMBER /* Timber (710 builtin) */ |
| 69 | #define CRT_ID_TVRX S9000_ID_98765 /* TVRX (gto/falcon) */ |
| 70 | #define CRT_ID_ARTIST S9000_ID_ARTIST /* Artist */ |
| 71 | #define CRT_ID_SUMMIT 0x2FC1066B /* Summit FX2, FX4, FX6 ... */ |
| 72 | |
| 73 | /* structure for ioctl(GCDESCRIBE) */ |
| 74 | |
| 75 | #define gaddr_t unsigned long /* FIXME: PA2.0 (64bit) portable ? */ |
| 76 | |
| 77 | struct grf_fbinfo { |
| 78 | unsigned int id; /* upper 32 bits of graphics id */ |
| 79 | unsigned int mapsize; /* mapped size of framebuffer */ |
| 80 | unsigned int dwidth, dlength;/* x and y sizes */ |
| 81 | unsigned int width, length; /* total x and total y size */ |
| 82 | unsigned int xlen; /* x pitch size */ |
| 83 | unsigned int bpp, bppu; /* bits per pixel and used bpp */ |
| 84 | unsigned int npl, nplbytes; /* # of planes and bytes per plane */ |
| 85 | char name[32]; /* name of the device (from ROM) */ |
| 86 | unsigned int attr; /* attributes */ |
| 87 | gaddr_t fbbase, regbase;/* framebuffer and register base addr */ |
| 88 | gaddr_t regions[6]; /* region bases */ |
| 89 | }; |
| 90 | |
| 91 | #define GCID _IOR('G', 0, int) |
| 92 | #define GCON _IO('G', 1) |
| 93 | #define GCOFF _IO('G', 2) |
| 94 | #define GCAON _IO('G', 3) |
| 95 | #define GCAOFF _IO('G', 4) |
| 96 | #define GCMAP _IOWR('G', 5, int) |
| 97 | #define GCUNMAP _IOWR('G', 6, int) |
| 98 | #define GCMAP_HPUX _IO('G', 5) |
| 99 | #define GCUNMAP_HPUX _IO('G', 6) |
| 100 | #define GCLOCK _IO('G', 7) |
| 101 | #define GCUNLOCK _IO('G', 8) |
| 102 | #define GCLOCK_MINIMUM _IO('G', 9) |
| 103 | #define GCUNLOCK_MINIMUM _IO('G', 10) |
| 104 | #define GCSTATIC_CMAP _IO('G', 11) |
| 105 | #define GCVARIABLE_CMAP _IO('G', 12) |
| 106 | #define GCTERM _IOWR('G',20,int) /* multi-headed Tomcat */ |
| 107 | #define GCDESCRIBE _IOR('G', 21, struct grf_fbinfo) |
| 108 | #define GCFASTLOCK _IO('G', 26) |
| 109 | |
| 110 | #endif /* __ASM_PARISC_GRFIOCTL_H */ |
| 111 | |