The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/dev/ie/if_ievar.h

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 /*-
    2  * $FreeBSD: releng/6.4/sys/dev/ie/if_ievar.h 147256 2005-06-10 16:49:24Z brooks $
    3  */
    4 
    5 enum ie_hardware {
    6         IE_NONE,
    7         IE_STARLAN10,
    8         IE_EN100,
    9         IE_SLFIBER,
   10         IE_3C507,
   11         IE_NI5210,
   12         IE_EE16,
   13         IE_UNKNOWN
   14 };
   15 
   16 /*
   17  * Ethernet status, per interface.
   18  */
   19 struct ie_softc {
   20         struct   ifnet *ifp;
   21         void     (*ie_reset_586) (struct ie_softc *);
   22         void     (*ie_chan_attn) (struct ie_softc *);
   23         enum     ie_hardware hard_type;
   24         int      hard_vers;
   25         int      unit;
   26         u_char   enaddr[6];
   27 
   28         device_t                dev;
   29 
   30         struct resource *       io_res;
   31         int                     io_rid;
   32         bus_space_tag_t         io_bt;
   33         bus_space_handle_t      io_bh;
   34 
   35         struct resource *       irq_res;
   36         int                     irq_rid;
   37         void *                  irq_ih;
   38 
   39         struct resource *       mem_res;
   40         int                     mem_rid;
   41         bus_space_tag_t         mem_bt;
   42         bus_space_handle_t      mem_bh;
   43 
   44         u_int    port;          /* i/o base address for this interface */
   45         caddr_t  iomem;         /* memory size */
   46         caddr_t  iomembot;      /* memory base address */
   47         unsigned iosize;
   48         int      bus_use;       /* 0 means 16bit, 1 means 8 bit adapter */
   49 
   50         int      want_mcsetup;
   51         int      promisc;
   52         int      nframes;
   53         int      nrxbufs;
   54         int      ntxbufs;
   55         volatile struct ie_int_sys_conf_ptr *iscp;
   56         volatile struct ie_sys_ctl_block *scb;
   57         volatile struct ie_recv_frame_desc **rframes;   /* nframes worth */
   58         volatile struct ie_recv_buf_desc **rbuffs;      /* nrxbufs worth */
   59         volatile u_char **cbuffs;                       /* nrxbufs worth */
   60         int      rfhead, rftail, rbhead, rbtail;
   61 
   62         volatile struct ie_xmit_cmd **xmit_cmds;        /* ntxbufs worth */
   63         volatile struct ie_xmit_buf **xmit_buffs;       /* ntxbufs worth */
   64         volatile u_char  **xmit_cbuffs;                 /* ntxbufs worth */
   65         int      xmit_count;
   66 
   67         struct   ie_en_addr mcast_addrs[MAXMCAST + 1];
   68         int      mcast_count;
   69 
   70         u_short  irq_encoded;   /* encoded interrupt on IEE16 */
   71 };
   72 #define PORT(sc)        sc->port
   73 #define MEM(sc)         sc->iomem
   74 
   75 void            ie_intr                 (void *);
   76 int             ie_alloc_resources      (device_t);
   77 void            ie_release_resources    (device_t);
   78 int             ie_attach               (device_t);
   79 int             ie_detach               (device_t);
   80 
   81 void            el_reset_586            (struct ie_softc *);
   82 void            el_chan_attn            (struct ie_softc *);
   83 
   84 void            sl_reset_586            (struct ie_softc *);
   85 void            sl_chan_attn            (struct ie_softc *);
   86 
   87 void            ee16_reset_586          (struct ie_softc *);
   88 void            ee16_chan_attn          (struct ie_softc *);
   89 
   90 void            sl_read_ether           (struct ie_softc *, unsigned char *);
   91 int             check_ie_present        (struct ie_softc *);
   92 

Cache object: 61b499a10b5500aaf70ef8c1e13a88dc


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.