/* $NetBSD: nhpibreg.h,v 1.7 2005/12/11 12:17:14 christos Exp $ */ /* * Copyright (c) 1982, 1990, 1993 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * @(#)nhpibreg.h 8.1 (Berkeley) 6/10/93 */ #include /* XXX */ struct nhpibdevice { u_char hpib_pad0; vu_char hpib_cid; u_char hpib_pad1; #define hpib_ie hpib_ids vu_char hpib_ids; u_char hpib_pad2; vu_char hpib_csa; u_char hpib_pad3[11]; #define hpib_mim hpib_mis vu_char hpib_mis; u_char hpib_pad4; #define hpib_lim hpib_lis vu_char hpib_lis; u_char hpib_pad5; vu_char hpib_is; u_char hpib_pad6; #define hpib_acr hpib_cls vu_char hpib_cls; u_char hpib_pad7; vu_char hpib_ar; u_char hpib_pad8; vu_char hpib_sprb; u_char hpib_pad9; #define hpib_ppr hpib_cpt vu_char hpib_cpt; u_char hpib_pad10; vu_char hpib_data; }; /* * Bits in hpib_lis (and hpib_lim). */ #define LIS_IFC 0x01 #define LIS_SRQ 0x02 #define LIS_MA 0x04 #define LIS_DCAS 0x08 #define LIS_APT 0x10 #define LIS_UCG 0x20 #define LIS_ERR 0x40 #define LIS_GET 0x80 #define MIS_END 0x08 #define MIS_BO 0x10 #define MIS_BI 0x20 #define IS_TADS 0x02 #define IS_LADS 0x04 /* * ti9914 "Auxiliary Commands" - Some are Set/Clear, others pulse. */ #define AUX_CSWRST 0x00 /* End software reset */ #define AUX_RHDF 0x02 /* release RFD (ready for data) holdoff */ #define AUX_CHDFA 0x03 /* Clear holdoff on all data */ #define AUX_CHDFE 0x04 /* Clear holdoff on EOI data only */ #define AUX_EOI 0x08 /* Pulse EOI (with data) */ #define AUX_CLON 0x09 /* Clear listen only */ #define AUX_CTON 0x0a /* Clear talk only */ #define AUX_GTS 0x0b /* Go to standby (clears ATN line) */ #define AUX_TCA 0x0c /* Take control (async) */ #define AUX_TCS 0x0d /* Take control (sync) */ #define AUX_CPP 0x0e /* Clear parallel poll */ #define AUX_CSIC 0x0f /* Clear IFC (interface clear) line */ #define AUX_CSRE 0x10 /* Clear REN (remote enable) line */ #define AUX_CDAI 0x13 /* Clear interrupt disable */ #define AUX_CSTD1 0x15 /* Clear 1200ns T1 delay */ #define AUX_CSHDW 0x16 /* Clear shadow handshake */ #define AUX_CVSTD1 0x17 /* Clear 600ns T1 delay */ #define AUX_SSWRST 0x80 /* Start software reset */ #define AUX_SHDFA 0x83 /* Set holdoff on all data */ #define AUX_SHDFE 0x84 /* Set holdoff on EOI data only */ #define AUX_SLON 0x89 /* Set listen only */ #define AUX_STON 0x8a /* Set talk only */ #define AUX_SPP 0x8e /* Set parallel poll */ #define AUX_SSIC 0x8f /* Set IFC line */ #define AUX_SSRE 0x90 /* Set REN line */ #define AUX_SDAI 0x93 /* Disable all interrupts */ #define AUX_SSTD1 0x95 /* Set T1 delay to 1200ns */ #define AUX_SSHDW 0x96 /* Set shadow handshake */ #define AUX_SVSTD1 0x97 /* Set T1 delay to 600ns */