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 /* $Id: xdi_adapter.h,v 1.7 2004/03/21 17:26:01 armin Exp $ */
  2 
  3 #ifndef __DIVA_OS_XDI_ADAPTER_H__
  4 #define __DIVA_OS_XDI_ADAPTER_H__
  5 
  6 #define DIVAS_XDI_ADAPTER_BUS_PCI  0
  7 #define DIVAS_XDI_ADAPTER_BUS_ISA  1
  8 
  9 typedef struct _divas_pci_card_resources {
 10         byte bus;
 11         byte func;
 12         void *hdev;
 13 
 14         dword bar[8];           /* contains context of appropriate BAR Register */
 15         void __iomem *addr[8];          /* same bar, but mapped into memory */
 16         dword length[8];        /* bar length */
 17         int mem_type_id[MAX_MEM_TYPE];
 18         unsigned int qoffset;
 19         byte irq;
 20 } divas_pci_card_resources_t;
 21 
 22 typedef union _divas_card_resources {
 23         divas_pci_card_resources_t pci;
 24 } divas_card_resources_t;
 25 
 26 struct _diva_os_xdi_adapter;
 27 typedef int (*diva_init_card_proc_t) (struct _diva_os_xdi_adapter * a);
 28 typedef int (*diva_cmd_card_proc_t) (struct _diva_os_xdi_adapter * a,
 29                                      diva_xdi_um_cfg_cmd_t * data,
 30                                      int length);
 31 typedef void (*diva_xdi_clear_interrupts_proc_t) (struct
 32                                                   _diva_os_xdi_adapter *);
 33 
 34 #define DIVA_XDI_MBOX_BUSY                      1
 35 #define DIVA_XDI_MBOX_WAIT_XLOG 2
 36 
 37 typedef struct _xdi_mbox_t {
 38         dword status;
 39         diva_xdi_um_cfg_cmd_data_t cmd_data;
 40         dword data_length;
 41         void *data;
 42 } xdi_mbox_t;
 43 
 44 typedef struct _diva_os_idi_adapter_interface {
 45         diva_init_card_proc_t cleanup_adapter_proc;
 46         diva_cmd_card_proc_t cmd_proc;
 47 } diva_os_idi_adapter_interface_t;
 48 
 49 typedef struct _diva_os_xdi_adapter {
 50         struct list_head link;
 51         int CardIndex;
 52         int CardOrdinal;
 53         int controller;         /* number of this controller */
 54         int Bus;                /* PCI, ISA, ... */
 55         divas_card_resources_t resources;
 56         char port_name[24];
 57         ISDN_ADAPTER xdi_adapter;
 58         xdi_mbox_t xdi_mbox;
 59         diva_os_idi_adapter_interface_t interface;
 60         struct _diva_os_xdi_adapter *slave_adapters[3];
 61         void *slave_list;
 62         void *proc_adapter_dir; /* adapterX proc entry */
 63         void *proc_info;        /* info proc entry     */
 64         void *proc_grp_opt;     /* group_optimization  */
 65         void *proc_d_l1_down;   /* dynamic_l1_down     */
 66         volatile diva_xdi_clear_interrupts_proc_t clear_interrupts_proc;
 67         dword dsp_mask;
 68 } diva_os_xdi_adapter_t;
 69 
 70 #endif
 71 
  This page was automatically generated by the LXR engine.