Home | History | Annotate | Line # | Download | only in ppbus
      1  1.6  christos /* $NetBSD: ppbus_io.h,v 1.6 2005/12/11 12:23:28 christos Exp $ */
      2  1.2     bjh21 
      3  1.1  jdolecek /*-
      4  1.1  jdolecek  * Copyright (c) 1999 Nicolas Souchu
      5  1.1  jdolecek  * All rights reserved.
      6  1.1  jdolecek  *
      7  1.1  jdolecek  * Redistribution and use in source and binary forms, with or without
      8  1.1  jdolecek  * modification, are permitted provided that the following conditions
      9  1.1  jdolecek  * are met:
     10  1.1  jdolecek  * 1. Redistributions of source code must retain the above copyright
     11  1.1  jdolecek  *    notice, this list of conditions and the following disclaimer.
     12  1.1  jdolecek  * 2. Redistributions in binary form must reproduce the above copyright
     13  1.1  jdolecek  *    notice, this list of conditions and the following disclaimer in the
     14  1.1  jdolecek  *    documentation and/or other materials provided with the distribution.
     15  1.1  jdolecek  *
     16  1.1  jdolecek  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
     17  1.1  jdolecek  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
     18  1.1  jdolecek  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
     19  1.1  jdolecek  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
     20  1.1  jdolecek  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
     21  1.1  jdolecek  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
     22  1.1  jdolecek  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
     23  1.1  jdolecek  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
     24  1.1  jdolecek  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
     25  1.1  jdolecek  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
     26  1.1  jdolecek  * SUCH DAMAGE.
     27  1.1  jdolecek  *
     28  1.3     bjh21  * FreeBSD: src/sys/dev/ppbus/ppbio.h,v 1.1 2000/01/14 00:17:57 nsouch Exp
     29  1.1  jdolecek  *
     30  1.1  jdolecek  */
     31  1.1  jdolecek 
     32  1.1  jdolecek #ifndef __PPBUS_IO_H
     33  1.1  jdolecek #define __PPBUS_IO_H
     34  1.1  jdolecek 
     35  1.1  jdolecek /* Parallel port bus I/O opcodes */
     36  1.5     perry #define PPBUS_OUTSB_EPP 1
     37  1.5     perry #define PPBUS_OUTSW_EPP 2
     38  1.1  jdolecek #define PPBUS_OUTSL_EPP 3
     39  1.1  jdolecek #define PPBUS_INSB_EPP  4
     40  1.1  jdolecek #define PPBUS_INSW_EPP  5
     41  1.1  jdolecek #define PPBUS_INSL_EPP  6
     42  1.1  jdolecek #define PPBUS_RDTR      7
     43  1.1  jdolecek #define PPBUS_RSTR      8
     44  1.1  jdolecek #define PPBUS_RCTR      9
     45  1.1  jdolecek #define PPBUS_REPP_A    10
     46  1.1  jdolecek #define PPBUS_REPP_D    11
     47  1.1  jdolecek #define PPBUS_RECR      12
     48  1.1  jdolecek #define PPBUS_RFIFO     13
     49  1.1  jdolecek #define PPBUS_WDTR      14
     50  1.1  jdolecek #define PPBUS_WSTR      15
     51  1.1  jdolecek #define PPBUS_WCTR      16
     52  1.1  jdolecek #define PPBUS_WEPP_A    17
     53  1.1  jdolecek #define PPBUS_WEPP_D    18
     54  1.1  jdolecek #define PPBUS_WECR      19
     55  1.1  jdolecek #define PPBUS_WFIFO     20
     56  1.1  jdolecek 
     57  1.1  jdolecek 
     58  1.1  jdolecek /*
     59  1.1  jdolecek  * Set of ppbus i/o routines callable from ppbus device drivers
     60  1.1  jdolecek  */
     61  1.1  jdolecek 
     62  1.1  jdolecek #define ppbus_outsb_epp(dev,buf,cnt) \
     63  1.1  jdolecek 		ppbus_io((dev), PPBUS_OUTSB_EPP, (buf), (cnt), 0)
     64  1.5     perry 
     65  1.1  jdolecek #define ppbus_outsw_epp(dev,buf,cnt) \
     66  1.1  jdolecek 		ppbus_io((dev), PPBUS_OUTSW_EPP, (buf), (cnt), 0)
     67  1.5     perry 
     68  1.1  jdolecek #define ppbus_outsl_epp(dev,buf,cnt) \
     69  1.1  jdolecek 		ppbus_io((dev), PPBUS_OUTSL_EPP, (buf), (cnt), 0)
     70  1.1  jdolecek 
     71  1.1  jdolecek #define ppbus_insb_epp(dev,buf,cnt) \
     72  1.1  jdolecek 		ppbus_io((dev), PPBUS_INSB_EPP, (buf), (cnt), 0)
     73  1.5     perry 
     74  1.1  jdolecek #define ppbus_insw_epp(dev,buf,cnt) \
     75  1.1  jdolecek 		ppbus_io(( dev), PPBUS_INSW_EPP, (buf), (cnt), 0)
     76  1.5     perry 
     77  1.1  jdolecek #define ppbus_insl_epp(dev,buf,cnt) \
     78  1.1  jdolecek 		ppbus_io((dev), PPBUS_INSL_EPP, (buf), (cnt), 0))
     79  1.1  jdolecek 
     80  1.1  jdolecek #define ppbus_repp_A(dev) \
     81  1.1  jdolecek 		ppbus_io((dev), PPBUS_REPP_A, NULL, 0, 0)
     82  1.1  jdolecek 
     83  1.1  jdolecek #define ppbus_repp_D(dev) \
     84  1.1  jdolecek 		ppbus_io((dev), PPBUS_REPP_D, NULL, 0, 0)
     85  1.1  jdolecek 
     86  1.1  jdolecek #define ppbus_recr(dev)	\
     87  1.1  jdolecek 		ppbus_io((dev), PPBUS_RECR, NULL, 0, 0)
     88  1.1  jdolecek 
     89  1.1  jdolecek #define ppbus_rfifo(dev) \
     90  1.1  jdolecek 		ppbus_io((dev), PPBUS_RFIFO, NULL, 0, 0)
     91  1.5     perry 
     92  1.1  jdolecek #define ppbus_wepp_A(dev,byte) \
     93  1.1  jdolecek 		ppbus_io((dev), PPBUS_WEPP_A, NULL, 0, (byte))
     94  1.5     perry 
     95  1.1  jdolecek #define ppbus_wepp_D(dev,byte) \
     96  1.1  jdolecek 		ppbus_io((dev), PPBUS_WEPP_D, NULL, 0, (byte))
     97  1.5     perry 
     98  1.1  jdolecek #define ppbus_wecr(dev,byte) \
     99  1.1  jdolecek 		ppbus_io((dev), PPBUS_WECR, NULL, 0, (byte))
    100  1.5     perry 
    101  1.1  jdolecek #define ppbus_wfifo(dev,byte) \
    102  1.1  jdolecek 		ppbus_io((dev), PPBUS_WFIFO, NULL, 0, (byte))
    103  1.1  jdolecek 
    104  1.1  jdolecek #define ppbus_rdtr(dev) \
    105  1.1  jdolecek 		ppbus_io((dev), PPBUS_RDTR, NULL, 0, 0)
    106  1.5     perry 
    107  1.1  jdolecek #define ppbus_rstr(dev) \
    108  1.1  jdolecek 		ppbus_io((dev), PPBUS_RSTR, NULL, 0, 0)
    109  1.5     perry 
    110  1.1  jdolecek #define ppbus_rctr(dev) \
    111  1.1  jdolecek 		ppbus_io((dev), PPBUS_RCTR, NULL, 0, 0)
    112  1.1  jdolecek 
    113  1.1  jdolecek #define ppbus_wdtr(dev,byte) \
    114  1.1  jdolecek 		ppbus_io((dev), PPBUS_WDTR, NULL, 0, (byte))
    115  1.5     perry 
    116  1.1  jdolecek #define ppbus_wstr(dev,byte) \
    117  1.1  jdolecek 		ppbus_io((dev), PPBUS_WSTR, NULL, 0, (byte))
    118  1.5     perry 
    119  1.1  jdolecek #define ppbus_wctr(dev,byte) \
    120  1.1  jdolecek 		ppbus_io((dev), PPBUS_WCTR, NULL, 0, (byte))
    121  1.5     perry 
    122  1.1  jdolecek #endif /* __PPBUS_IO_H */
    123