xref: /netbsd-src/sys/dev/ic/stivar.h (revision b1c86f5f087524e68db12794ee9c3e3da1ab17a0)
1 /* $NetBSD: stivar.h,v 1.3 2009/05/07 15:34:50 skrll Exp $ */
2 
3 /*	$OpenBSD: stivar.h,v 1.15 2003/12/16 06:07:13 mickey Exp $	*/
4 
5 /*
6  * Copyright (c) 2000-2003 Michael Shalayeff
7  * All rights reserved.
8  *
9  * Redistribution and use in source and binary forms, with or without
10  * modification, are permitted provided that the following conditions
11  * are met:
12  * 1. Redistributions of source code must retain the above copyright
13  *    notice, this list of conditions and the following disclaimer.
14  * 2. Redistributions in binary form must reproduce the above copyright
15  *    notice, this list of conditions and the following disclaimer in the
16  *    documentation and/or other materials provided with the distribution.
17  *
18  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
19  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
20  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
21  * IN NO EVENT SHALL THE AUTHOR OR HIS RELATIVES BE LIABLE FOR ANY DIRECT,
22  * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
23  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
24  * SERVICES; LOSS OF MIND, USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
25  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
26  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
27  * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
28  * THE POSSIBILITY OF SUCH DAMAGE.
29  */
30 
31 #ifndef _IC_STIVAR_H_
32 #define _IC_STIVAR_H_
33 
34 struct sti_softc {
35 	device_t sc_dev;
36 	void *sc_ih;
37 
38 	u_int	sc_wsmode;
39 	u_int	sc_flags;
40 #define	STI_TEXTMODE	0x0001
41 #define	STI_CLEARSCR	0x0002
42 #define	STI_CONSOLE	0x0004
43 	int	sc_devtype;
44 	int	sc_nscreens;
45 	int	sc_bpp;
46 
47 	bus_space_tag_t iot, memt;
48 	bus_space_handle_t romh;
49 	bus_addr_t base, fbaddr;
50 	bus_size_t fblen;
51 
52 	struct sti_dd sc_dd;		/* in word format */
53 	struct sti_font sc_curfont;
54 	struct sti_cfg sc_cfg;
55 	struct sti_ecfg sc_ecfg;
56 
57 	void	*sc_romfont;		/* ROM font copy, either in memory... */
58 	u_int	sc_fontmaxcol;		/* ...or in off-screen frame buffer */
59 	u_int	sc_fontbase;
60 
61 	u_int8_t sc_rcmap[STI_NCMAP], sc_gcmap[STI_NCMAP], sc_bcmap[STI_NCMAP];
62 	vaddr_t	sc_code;
63 
64 	sti_init_t	init;
65 	sti_mgmt_t	mgmt;
66 	sti_unpmv_t	unpmv;
67 	sti_blkmv_t	blkmv;
68 	sti_test_t	test;
69 	sti_exhdl_t	exhdl;
70 	sti_inqconf_t	inqconf;
71 	sti_scment_t	scment;
72 	sti_dmac_t	dmac;
73 	sti_flowc_t	flowc;
74 	sti_utiming_t	utiming;
75 	sti_pmgr_t	pmgr;
76 	sti_util_t	util;
77 };
78 
79 void sti_attach_common(struct sti_softc *sc);
80 int sti_intr(void *v);
81 
82 #endif /* _IC_STIVAR_H_ */
83