xref: /original-bsd/sys/hp/dev/grfioctl.h (revision 3705696b)
1 /*
2  * Copyright (c) 1988 University of Utah.
3  * Copyright (c) 1990, 1993
4  *	The Regents of the University of California.  All rights reserved.
5  *
6  * This code is derived from software contributed to Berkeley by
7  * the Systems Programming Group of the University of Utah Computer
8  * Science Department.
9  *
10  * %sccs.include.redist.c%
11  *
12  * from: Utah $Hdr: grfioctl.h 1.15 92/01/22$
13  *
14  *	@(#)grfioctl.h	8.1 (Berkeley) 06/10/93
15  */
16 
17 struct	grfinfo {
18 	int	gd_id;			/* HPUX identifier */
19 	caddr_t	gd_regaddr;		/* control registers physaddr */
20 	int	gd_regsize;		/* control registers size */
21 	caddr_t	gd_fbaddr;		/* frame buffer physaddr */
22 	int	gd_fbsize;		/* frame buffer size */
23 	short	gd_colors;		/* number of colors */
24 	short	gd_planes;		/* number of planes */
25 /* new stuff */
26 	int	gd_fbwidth;		/* frame buffer width */
27 	int	gd_fbheight;		/* frame buffer height */
28 	int	gd_dwidth;		/* displayed part width */
29 	int	gd_dheight;		/* displayed part height */
30 	int	gd_pad[6];		/* for future expansion */
31 };
32 
33 /* types */
34 #define GRFGATOR	8
35 #define GRFBOBCAT	9
36 #define	GRFCATSEYE	9
37 #define GRFRBOX		10
38 #define GRFFIREEYE	11
39 #define GRFHYPERION	12
40 #define GRFDAVINCI	14
41 
42 /*
43  * HPUX ioctls (here for the benefit of the driver)
44  */
45 struct	grf_slot {
46 	int	slot;
47 	u_char	*addr;
48 };
49 
50 #ifndef _IOH
51 #define _IOH(x,y)	(IOC_IN|((x)<<8)|y)	/* IOC_IN is IOC_VOID */
52 
53 #define	GCID		_IOR('G', 0, int)
54 #define	GCON		_IOH('G', 1)
55 #define	GCOFF		_IOH('G', 2)
56 #define	GCAON		_IOH('G', 3)
57 #define	GCAOFF		_IOH('G', 4)
58 #define	GCMAP		_IOWR('G', 5, int)
59 #define	GCUNMAP		_IOWR('G', 6, int)
60 #define	GCLOCK		_IOH('G', 7)
61 #define	GCUNLOCK	_IOH('G', 8)
62 #define	GCLOCK_MINIMUM	_IOH('G', 9)
63 #define	GCUNLOCK_MINIMUM _IOH('G', 10)
64 #define	GCSTATIC_CMAP	_IOH('G', 11)
65 #define	GCVARIABLE_CMAP _IOH('G', 12)
66 #define GCSLOT		_IOWR('G', 13, struct grf_slot)
67 
68 /* XXX: for now */
69 #define	IOMAPID		_IOR('M',0,int)	/* ??? */
70 #define	IOMAPMAP	_IOWR('M',1,int)
71 #define	IOMAPUNMAP	_IOWR('M',2,int)
72 #endif
73 
74 /*
75  * BSD ioctls
76  */
77 #define	GRFIOCGINFO	_IOR('G', 0, struct grfinfo) /* get info on device */
78 #define	GRFIOCON	_IO('G', 1)		/* turn graphics on */
79 #define	GRFIOCOFF	_IO('G', 2)		/* turn graphics off */
80 #define GRFIOCMAP	_IOWR('G', 5, int)	/* map in regs+framebuffer */
81 #define GRFIOCUNMAP	_IOW('G', 6, int)	/* unmap regs+framebuffer */
82