[BACK]Return to sgecvar.h CVS log [TXT][DIR] Up to [local] / sys / arch / vax / if

Annotation of sys/arch/vax/if/sgecvar.h, Revision 1.1.1.1

1.1       nbrk        1: /*     $OpenBSD: sgecvar.h,v 1.5 2006/08/30 19:28:11 miod Exp $        */
                      2: /*      $NetBSD: sgecvar.h,v 1.2 2000/06/04 02:14:14 matt Exp $ */
                      3: /*
                      4:  * Copyright (c) 1999 Ludd, University of Lule}, Sweden. All rights reserved.
                      5:  *
                      6:  * Redistribution and use in source and binary forms, with or without
                      7:  * modification, are permitted provided that the following conditions
                      8:  * are met:
                      9:  * 1. Redistributions of source code must retain the above copyright
                     10:  *    notice, this list of conditions and the following disclaimer.
                     11:  * 2. Redistributions in binary form must reproduce the above copyright
                     12:  *    notice, this list of conditions and the following disclaimer in the
                     13:  *    documentation and/or other materials provided with the distribution.
                     14:  * 3. All advertising materials mentioning features or use of this software
                     15:  *    must display the following acknowledgement:
                     16:  *      This product includes software developed at Ludd, University of
                     17:  *      Lule}, Sweden and its contributors.
                     18:  * 4. The name of the author may not be used to endorse or promote products
                     19:  *    derived from this software without specific prior written permission
                     20:  *
                     21:  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
                     22:  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
                     23:  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
                     24:  * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
                     25:  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
                     26:  * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
                     27:  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
                     28:  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
                     29:  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
                     30:  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
                     31:  */
                     32:
                     33: #define RXDESCS        30      /* # of receive descriptors */
                     34: #define TXDESCS        60      /* # transmit descs */
                     35:
                     36: /*
                     37:  * Descriptors must be an even number; optimisation thing.
                     38:  */
                     39: struct ze_cdata {
                     40:        struct ze_rdes  zc_recv[RXDESCS+2];     /* Receive descriptors */
                     41:        struct ze_tdes  zc_xmit[TXDESCS+2];     /* Transmit descriptors */
                     42:        u_int8_t        zc_setup[128];          /* Setup packet layout */
                     43: };
                     44:
                     45: struct ze_softc {
                     46:        struct device   sc_dev;         /* Configuration common part    */
                     47:        struct evcount  sc_intrcnt;     /* Interrupt counters           */
                     48:        struct arpcom   sc_ac;          /* Ethernet common part         */
                     49: #define sc_if  sc_ac.ac_if             /* network-visible interface    */
                     50:        bus_space_tag_t sc_iot;
                     51:        bus_addr_t      sc_ioh;
                     52:        bus_dma_tag_t   sc_dmat;
                     53:        struct ze_cdata *sc_zedata;     /* Descriptor struct            */
                     54:        struct ze_cdata *sc_pzedata;    /* Physical address of above    */
                     55:        bus_dmamap_t    sc_cmap;        /* Map for control structures   */
                     56:        struct mbuf*    sc_txmbuf[TXDESCS];
                     57:        struct mbuf*    sc_rxmbuf[RXDESCS];
                     58:        bus_dmamap_t    sc_xmtmap[TXDESCS];
                     59:        bus_dmamap_t    sc_rcvmap[RXDESCS];
                     60:        int             sc_intvec;      /* Interrupt vector             */
                     61:        int             sc_nexttx;
                     62:        int             sc_inq;
                     63:        int             sc_lastack;
                     64:        int             sc_nextrx;
                     65:        int             sc_flags;
                     66: #define        SGECF_SETUP             0x00000001      /* need to send setup packet */
                     67: #define        SGECF_VXTQUIRKS         0x00000002      /* need VXT2000 care */
                     68: };
                     69:
                     70: void   sgec_attach(struct ze_softc *);
                     71: int    sgec_intr(struct ze_softc *);

CVSweb