root/dev/usb/if_cdcereg.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


    1 /*      $OpenBSD: if_cdcereg.h,v 1.3 2007/07/23 16:41:15 mbalmer Exp $ */
    2 
    3 /*
    4  * Copyright (c) 1997, 1998, 1999, 2000-2003 Bill Paul <wpaul@windriver.com>
    5  * Copyright (c) 2003 Craig Boston
    6  * Copyright (c) 2004 Daniel Hartmeier
    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  * 3. All advertising materials mentioning features or use of this software
   18  *    must display the following acknowledgement:
   19  *      This product includes software developed by Bill Paul.
   20  * 4. Neither the name of the author nor the names of any co-contributors
   21  *    may be used to endorse or promote products derived from this software
   22  *    without specific prior written permission.
   23  *
   24  * THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND
   25  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   26  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   27  * ARE DISCLAIMED.  IN NO EVENT SHALL Bill Paul, THE VOICES IN HIS HEAD OR
   28  * THE CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
   29  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
   30  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
   31  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
   32  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
   33  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
   34  * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
   35  */
   36 
   37 #define CDCE_RX_LIST_CNT        1
   38 #define CDCE_TX_LIST_CNT        1
   39 #define CDCE_BUFSZ              1542
   40 
   41 struct cdce_type {
   42         struct usb_devno         cdce_dev;
   43         u_int16_t                cdce_flags;
   44 #define CDCE_ZAURUS     1
   45 #define CDCE_SWAPUNION  2
   46 };
   47 
   48 struct cdce_softc;
   49 
   50 struct cdce_chain {
   51         struct cdce_softc       *cdce_sc;
   52         usbd_xfer_handle         cdce_xfer;
   53         char                    *cdce_buf;
   54         struct mbuf             *cdce_mbuf;
   55         int                      cdce_accum;
   56         int                      cdce_idx;
   57 };
   58 
   59 struct cdce_cdata {
   60         struct cdce_chain        cdce_rx_chain[CDCE_RX_LIST_CNT];
   61         struct cdce_chain        cdce_tx_chain[CDCE_TX_LIST_CNT];
   62         int                      cdce_tx_prod;
   63         int                      cdce_tx_cons;
   64         int                      cdce_tx_cnt;
   65         int                      cdce_rx_prod;
   66 };
   67 
   68 struct cdce_softc {
   69         struct device            cdce_dev;
   70         struct arpcom            cdce_arpcom;
   71 #define GET_IFP(sc) (&(sc)->cdce_arpcom.ac_if)
   72         usbd_device_handle       cdce_udev;
   73         usbd_interface_handle    cdce_ctl_iface;
   74         int                      cdce_intr_no;
   75         usbd_pipe_handle         cdce_intr_pipe;
   76         usb_cdc_notification_t   cdce_intr_buf;
   77         int                      cdce_intr_size;
   78         usbd_interface_handle    cdce_data_iface;
   79         int                      cdce_bulkin_no;
   80         usbd_pipe_handle         cdce_bulkin_pipe;
   81         int                      cdce_bulkout_no;
   82         usbd_pipe_handle         cdce_bulkout_pipe;
   83         char                     cdce_dying;
   84         int                      cdce_unit;
   85         struct cdce_cdata        cdce_cdata;
   86         int                      cdce_rxeof_errors;
   87         u_int16_t                cdce_flags;
   88         char                     cdce_attached;
   89 };

/* [<][>][^][v][top][bottom][index][help] */