Linux kernel & device driver programming

Cross-Referenced Linux and Device Driver Code

[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ]
Version: [ 2.6.11.8 ] [ 2.6.25 ] [ 2.6.25.8 ] [ 2.6.31.13 ] Architecture: [ i386 ]
  1 /******************************************************************************
  2  *
  3  *      (C)Copyright 1998,1999 SysKonnect,
  4  *      a business unit of Schneider & Koch & Co. Datensysteme GmbH.
  5  *
  6  *      This program is free software; you can redistribute it and/or modify
  7  *      it under the terms of the GNU General Public License as published by
  8  *      the Free Software Foundation; either version 2 of the License, or
  9  *      (at your option) any later version.
 10  *
 11  *      The information in this file is provided "AS IS" without warranty.
 12  *
 13  ******************************************************************************/
 14 
 15 #ifndef _TARGETHW_
 16 #define _TARGETHW_
 17 
 18         /*
 19          *  PCI Watermark definition
 20          */
 21 #ifdef  PCI
 22 #define RX_WATERMARK    24
 23 #define TX_WATERMARK    24
 24 #define SK_ML_ID_1      0x20
 25 #define SK_ML_ID_2      0x30
 26 #endif
 27 
 28 #include        "h/skfbi.h"
 29 #ifndef TAG_MODE        
 30 #include        "h/fplus.h"
 31 #else
 32 #include        "h/fplustm.h"
 33 #endif
 34 
 35 #ifndef HW_PTR
 36 #define HW_PTR  void __iomem *
 37 #endif
 38 
 39 #ifdef MULT_OEM
 40 #define OI_STAT_LAST            0       /* end of OEM data base */
 41 #define OI_STAT_PRESENT         1       /* entry present but not empty */
 42 #define OI_STAT_VALID           2       /* holds valid ID, but is not active */ 
 43 #define OI_STAT_ACTIVE          3       /* holds valid ID, entry is active */
 44                                         /* active = adapter is supported */
 45 
 46 /* Memory representation of IDs must match representation in adapter. */
 47 struct  s_oem_ids {
 48         u_char  oi_status ;             /* Stat: last, present, valid, active */
 49         u_char  oi_mark[5] ;            /* "PID00" .. "PID07" ..        */
 50         u_char  oi_id[4] ;              /* id bytes, representation as  */
 51                                         /* defined by hardware,         */      
 52 #ifdef PCI
 53         u_char  oi_sub_id[4] ;          /* sub id bytes, representation as */
 54                                         /* defined by hardware,         */
 55 #endif
 56 } ;
 57 #endif  /* MULT_OEM */
 58 
 59 
 60 struct s_smt_hw {
 61         /*
 62          * global
 63          */
 64         HW_PTR  iop ;                   /* IO base address */
 65         short   dma ;                   /* DMA channel */
 66         short   irq ;                   /* IRQ level */
 67         short   eprom ;                 /* FLASH prom */
 68 
 69 #ifndef SYNC
 70         u_short n_a_send ;              /* pending send requests */
 71 #endif
 72 
 73 #if     defined(PCI)
 74         short   slot ;                  /* slot number */
 75         short   max_slots ;             /* maximum number of slots */
 76         short   wdog_used ;             /* TRUE if the watch dog is used */
 77 #endif
 78 
 79 #ifdef  PCI
 80         u_short pci_handle ;            /* handle to access the BIOS func */
 81         u_long  is_imask ;              /* int maske for the int source reg */
 82         u_long  phys_mem_addr ;         /* physical memory address */
 83         u_short mc_dummy ;              /* work around for MC compiler bug */   
 84         /*
 85          * state of the hardware
 86          */
 87         u_short hw_state ;              /* started or stopped */
 88 
 89 #define STARTED         1
 90 #define STOPPED         0
 91 
 92         int     hw_is_64bit ;           /* does we have a 64 bit adapter */
 93 #endif
 94 
 95 #ifdef  TAG_MODE
 96         u_long  pci_fix_value ;         /* value parsed by PCIFIX */
 97 #endif
 98 
 99         /*
100          * hwt.c
101          */
102         u_long  t_start ;               /* HWT start */
103         u_long  t_stop ;                /* HWT stop */
104         u_short timer_activ ;           /* HWT timer active */
105 
106         /*
107          * PIC
108          */
109         u_char  pic_a1 ;
110         u_char  pic_21 ;
111 
112         /*
113          * GENERIC ; do not modify beyond this line
114          */
115 
116         /*
117          * physical and canonical address
118          */
119         struct fddi_addr fddi_home_addr ;
120         struct fddi_addr fddi_canon_addr ;
121         struct fddi_addr fddi_phys_addr ;
122 
123         /*
124          * mac variables
125          */
126         struct mac_parameter mac_pa ;   /* tmin, tmax, tvx, treq .. */
127         struct mac_counter mac_ct ;     /* recv., lost, error  */
128         u_short mac_ring_is_up ;        /* ring is up flag */
129 
130         struct s_smt_fp fp ;            /* formac+ */
131 
132 #ifdef MULT_OEM
133         struct s_oem_ids *oem_id ;      /* pointer to selected id */
134         int oem_min_status ;            /* IDs to take care of */
135 #endif  /* MULT_OEM */
136 
137 } ;
138 #endif
139 
  This page was automatically generated by the LXR engine.