nhpibreg.h revision 1.7 1 1.7 christos /* $NetBSD: nhpibreg.h,v 1.7 2005/12/11 12:17:14 christos Exp $ */
2 1.4 cgd
3 1.1 cgd /*
4 1.3 mycroft * Copyright (c) 1982, 1990, 1993
5 1.3 mycroft * The Regents of the University of California. All rights reserved.
6 1.1 cgd *
7 1.1 cgd * Redistribution and use in source and binary forms, with or without
8 1.1 cgd * modification, are permitted provided that the following conditions
9 1.1 cgd * are met:
10 1.1 cgd * 1. Redistributions of source code must retain the above copyright
11 1.1 cgd * notice, this list of conditions and the following disclaimer.
12 1.1 cgd * 2. Redistributions in binary form must reproduce the above copyright
13 1.1 cgd * notice, this list of conditions and the following disclaimer in the
14 1.1 cgd * documentation and/or other materials provided with the distribution.
15 1.6 agc * 3. Neither the name of the University nor the names of its contributors
16 1.1 cgd * may be used to endorse or promote products derived from this software
17 1.1 cgd * without specific prior written permission.
18 1.1 cgd *
19 1.1 cgd * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
20 1.1 cgd * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21 1.1 cgd * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22 1.1 cgd * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
23 1.1 cgd * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
24 1.1 cgd * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
25 1.1 cgd * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26 1.1 cgd * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
27 1.1 cgd * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
28 1.1 cgd * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
29 1.1 cgd * SUCH DAMAGE.
30 1.1 cgd *
31 1.4 cgd * @(#)nhpibreg.h 8.1 (Berkeley) 6/10/93
32 1.1 cgd */
33 1.1 cgd
34 1.3 mycroft #include <hp300/dev/iotypes.h> /* XXX */
35 1.3 mycroft
36 1.3 mycroft struct nhpibdevice {
37 1.3 mycroft u_char hpib_pad0;
38 1.3 mycroft vu_char hpib_cid;
39 1.3 mycroft u_char hpib_pad1;
40 1.3 mycroft #define hpib_ie hpib_ids
41 1.3 mycroft vu_char hpib_ids;
42 1.3 mycroft u_char hpib_pad2;
43 1.3 mycroft vu_char hpib_csa;
44 1.3 mycroft u_char hpib_pad3[11];
45 1.3 mycroft #define hpib_mim hpib_mis
46 1.3 mycroft vu_char hpib_mis;
47 1.3 mycroft u_char hpib_pad4;
48 1.3 mycroft #define hpib_lim hpib_lis
49 1.3 mycroft vu_char hpib_lis;
50 1.3 mycroft u_char hpib_pad5;
51 1.3 mycroft vu_char hpib_is;
52 1.3 mycroft u_char hpib_pad6;
53 1.3 mycroft #define hpib_acr hpib_cls
54 1.3 mycroft vu_char hpib_cls;
55 1.3 mycroft u_char hpib_pad7;
56 1.3 mycroft vu_char hpib_ar;
57 1.3 mycroft u_char hpib_pad8;
58 1.3 mycroft vu_char hpib_sprb;
59 1.3 mycroft u_char hpib_pad9;
60 1.3 mycroft #define hpib_ppr hpib_cpt
61 1.3 mycroft vu_char hpib_cpt;
62 1.3 mycroft u_char hpib_pad10;
63 1.3 mycroft vu_char hpib_data;
64 1.3 mycroft };
65 1.1 cgd
66 1.5 mycroft /*
67 1.5 mycroft * Bits in hpib_lis (and hpib_lim).
68 1.5 mycroft */
69 1.5 mycroft #define LIS_IFC 0x01
70 1.1 cgd #define LIS_SRQ 0x02
71 1.5 mycroft #define LIS_MA 0x04
72 1.5 mycroft #define LIS_DCAS 0x08
73 1.5 mycroft #define LIS_APT 0x10
74 1.5 mycroft #define LIS_UCG 0x20
75 1.1 cgd #define LIS_ERR 0x40
76 1.5 mycroft #define LIS_GET 0x80
77 1.1 cgd
78 1.1 cgd #define MIS_END 0x08
79 1.1 cgd #define MIS_BO 0x10
80 1.1 cgd #define MIS_BI 0x20
81 1.1 cgd
82 1.1 cgd #define IS_TADS 0x02
83 1.1 cgd #define IS_LADS 0x04
84 1.1 cgd
85 1.5 mycroft /*
86 1.5 mycroft * ti9914 "Auxiliary Commands" - Some are Set/Clear, others pulse.
87 1.5 mycroft */
88 1.5 mycroft #define AUX_CSWRST 0x00 /* End software reset */
89 1.5 mycroft #define AUX_RHDF 0x02 /* release RFD (ready for data) holdoff */
90 1.5 mycroft #define AUX_CHDFA 0x03 /* Clear holdoff on all data */
91 1.5 mycroft #define AUX_CHDFE 0x04 /* Clear holdoff on EOI data only */
92 1.5 mycroft #define AUX_EOI 0x08 /* Pulse EOI (with data) */
93 1.5 mycroft #define AUX_CLON 0x09 /* Clear listen only */
94 1.5 mycroft #define AUX_CTON 0x0a /* Clear talk only */
95 1.5 mycroft #define AUX_GTS 0x0b /* Go to standby (clears ATN line) */
96 1.5 mycroft #define AUX_TCA 0x0c /* Take control (async) */
97 1.5 mycroft #define AUX_TCS 0x0d /* Take control (sync) */
98 1.5 mycroft #define AUX_CPP 0x0e /* Clear parallel poll */
99 1.5 mycroft #define AUX_CSIC 0x0f /* Clear IFC (interface clear) line */
100 1.5 mycroft #define AUX_CSRE 0x10 /* Clear REN (remote enable) line */
101 1.5 mycroft #define AUX_CDAI 0x13 /* Clear interrupt disable */
102 1.5 mycroft #define AUX_CSTD1 0x15 /* Clear 1200ns T1 delay */
103 1.5 mycroft #define AUX_CSHDW 0x16 /* Clear shadow handshake */
104 1.5 mycroft #define AUX_CVSTD1 0x17 /* Clear 600ns T1 delay */
105 1.5 mycroft
106 1.5 mycroft #define AUX_SSWRST 0x80 /* Start software reset */
107 1.5 mycroft #define AUX_SHDFA 0x83 /* Set holdoff on all data */
108 1.5 mycroft #define AUX_SHDFE 0x84 /* Set holdoff on EOI data only */
109 1.5 mycroft #define AUX_SLON 0x89 /* Set listen only */
110 1.5 mycroft #define AUX_STON 0x8a /* Set talk only */
111 1.5 mycroft #define AUX_SPP 0x8e /* Set parallel poll */
112 1.5 mycroft #define AUX_SSIC 0x8f /* Set IFC line */
113 1.5 mycroft #define AUX_SSRE 0x90 /* Set REN line */
114 1.5 mycroft #define AUX_SDAI 0x93 /* Disable all interrupts */
115 1.5 mycroft #define AUX_SSTD1 0x95 /* Set T1 delay to 1200ns */
116 1.5 mycroft #define AUX_SSHDW 0x96 /* Set shadow handshake */
117 1.5 mycroft #define AUX_SVSTD1 0x97 /* Set T1 delay to 600ns */
118