Main Page | Data Structures | Directories | File List | Data Fields | Globals

hostap_cs.c File Reference

#include <linux/config.h>
#include <linux/version.h>
#include <linux/module.h>
#include <linux/init.h>
#include <linux/if.h>
#include <linux/wait.h>
#include <linux/timer.h>
#include <linux/skbuff.h>
#include <linux/netdevice.h>
#include <linux/workqueue.h>
#include "hostap_wext.h"
#include <pcmcia/version.h>
#include <pcmcia/cs_types.h>
#include <pcmcia/cs.h>
#include <pcmcia/cistpl.h>
#include <pcmcia/cisreg.h>
#include <pcmcia/ds.h>
#include <asm/io.h>
#include "hostap_wlan.h"
#include "hostap_hw.c"

Include dependency graph for hostap_cs.c:

Go to the source code of this file.

Defines

#define PRISM2_PCCARD
#define HFA384X_OUTB(v, a)   outb((v), dev->base_addr + (a))
#define HFA384X_INB(a)   inb(dev->base_addr + (a))
#define HFA384X_OUTW(v, a)   outw((v), dev->base_addr + (a))
#define HFA384X_INW(a)   inw(dev->base_addr + (a))
#define HFA384X_INSW(a, buf, wc)   insw(dev->base_addr + (a), buf, wc)
#define HFA384X_OUTSW(a, buf, wc)   outsw(dev->base_addr + (a), buf, wc)
#define CS_CHECK(fn, ret)   do { last_fn = (fn); if ((last_ret = (ret)) != 0) goto cs_failed; } while (0)
#define CFG_CHECK2(fn, retf)

Functions

 MODULE_AUTHOR ("SSH Communications Security Corp, Jouni Malinen")
 MODULE_DESCRIPTION ("Support for Intersil Prism2-based 802.11 wireless LAN ""cards (PC Card).")
 MODULE_SUPPORTED_DEVICE ("Intersil Prism2-based WLAN cards (PC Card)")
 MODULE_LICENSE ("GPL")
 MODULE_PARM (irq_mask,"i")
 MODULE_PARM (irq_list,"1-4i")
 MODULE_PARM (ignore_cis_vcc,"i")
 MODULE_PARM_DESC (ignore_cis_vcc,"Ignore broken CIS VCC entry")
static int hfa384x_from_bap (struct net_device *dev, u16 bap, void *buf, int len)
static int hfa384x_to_bap (struct net_device *dev, u16 bap, void *buf, int len)
static void prism2_detach (dev_link_t *link)
static void prism2_release (u_long arg)
static int prism2_event (event_t event, int priority, event_callback_args_t *args)
static int prism2_pccard_card_present (local_info_t *local)
static void prism2_pccard_cor_sreset (local_info_t *local)
static void prism2_pccard_genesis_reset (local_info_t *local, int hcr)
static int prism2_pccard_dev_open (local_info_t *local)
static int prism2_pccard_dev_close (local_info_t *local)
static void cs_error (client_handle_t handle, int func, int ret)
static dev_link_t * prism2_attach (void)
static int prism2_config (dev_link_t *link)
static int __init init_prism2_pccard (void)
static void __exit exit_prism2_pccard (void)
 module_init (init_prism2_pccard)
 module_exit (exit_prism2_pccard)

Variables

static char * version = PRISM2_VERSION " (Jouni Malinen <jkmaline@cc.hut.fi>)"
static dev_info_t dev_info = "hostap_cs"
static dev_link_t * dev_list = NULL
static unsigned int irq_mask = 0xdeb8
static int irq_list [4] = { -1 }
static int ignore_cis_vcc = 0
static struct prism2_helper_functions prism2_pccard_funcs


Define Documentation

#define CFG_CHECK2 fn,
retf  ) 
 

Value:

do { int ret = (retf); \
if (ret != 0) { \
        PDEBUG(DEBUG_EXTRA, "CardServices(" #fn ") returned %d\n", ret); \
cs_error(link->handle, fn, ret); \
goto next_entry; \
} \
} while (0)

Definition at line 497 of file hostap_cs.c.

Referenced by prism2_config().

#define CS_CHECK fn,
ret  )    do { last_fn = (fn); if ((last_ret = (ret)) != 0) goto cs_failed; } while (0)
 

Definition at line 494 of file hostap_cs.c.

Referenced by prism2_config().

#define HFA384X_INB  )    inb(dev->base_addr + (a))
 

Definition at line 158 of file hostap_cs.c.

Referenced by hfa384x_from_bap().

#define HFA384X_INSW a,
buf,
wc  )    insw(dev->base_addr + (a), buf, wc)
 

Definition at line 161 of file hostap_cs.c.

Referenced by hfa384x_from_aux(), and hfa384x_from_bap().

#define HFA384X_INW  )    inw(dev->base_addr + (a))
 

Definition at line 160 of file hostap_cs.c.

Referenced by hfa384x_allocate_fid(), hfa384x_cmd(), hfa384x_cmd_issue(), hfa384x_cmd_no_wait(), hfa384x_cmd_wait(), hfa384x_read_reg(), hfa384x_read_regs(), hfa384x_setup_bap(), hfa384x_wait_offset(), hostap_bap_tasklet(), prism2_alloc_ev(), prism2_check_magic(), prism2_cmd_ev(), prism2_enable_aux_port(), prism2_ev_tick(), prism2_hw_init(), prism2_hw_init2(), prism2_info(), prism2_interrupt(), prism2_pci_cor_sreset(), prism2_read_fid_reg(), and prism2_rx().

#define HFA384X_OUTB v,
 )    outb((v), dev->base_addr + (a))
 

Definition at line 157 of file hostap_cs.c.

Referenced by hfa384x_to_bap().

#define HFA384X_OUTSW a,
buf,
wc  )    outsw(dev->base_addr + (a), buf, wc)
 

Definition at line 162 of file hostap_cs.c.

Referenced by hfa384x_to_aux(), and hfa384x_to_bap().

#define HFA384X_OUTW v,
 )    outw((v), dev->base_addr + (a))
 

Definition at line 159 of file hostap_cs.c.

Referenced by hfa384x_allocate_fid(), hfa384x_cmd_issue(), hfa384x_cmd_no_wait(), hfa384x_cmd_wait(), hfa384x_disable_interrupts(), hfa384x_enable_interrupts(), hfa384x_events_all(), hfa384x_events_no_bap0(), hfa384x_events_only_cmd(), hfa384x_from_aux(), hfa384x_setup_bap(), hfa384x_to_aux(), prism2_check_magic(), prism2_cmd_ev(), prism2_download_volatile(), prism2_enable_aux_port(), prism2_hw_init(), prism2_hw_init2(), prism2_info(), prism2_interrupt(), prism2_pci_cor_sreset(), prism2_pci_genesis_reset(), prism2_rx(), prism2_tx_ev(), and prism2_txexc().

#define PRISM2_PCCARD
 

Definition at line 1 of file hostap_cs.c.


Function Documentation

static void cs_error client_handle_t handle,
int func,
int ret
[static]
 

Definition at line 373 of file hostap_cs.c.

Referenced by prism2_attach(), prism2_config(), and prism2_detach().

static void __exit exit_prism2_pccard void  ) [static]
 

Definition at line 858 of file hostap_cs.c.

References dev_info, dev_list, prism2_detach(), and prism2_release().

Here is the call graph for this function:

static int hfa384x_from_bap struct net_device * dev,
u16 bap,
void * buf,
int len
[static]
 

Definition at line 167 of file hostap_cs.c.

References HFA384X_INB, and HFA384X_INSW.

Referenced by hfa384x_get_rid(), hostap_tx_compl_read(), prism2_info(), and prism2_rx().

static int hfa384x_to_bap struct net_device * dev,
u16 bap,
void * buf,
int len
[static]
 

Definition at line 187 of file hostap_cs.c.

References HFA384X_OUTB, and HFA384X_OUTSW.

Referenced by hfa384x_set_rid(), prism2_tx(), and prism2_tx_80211().

static int __init init_prism2_pccard void  ) [static]
 

Definition at line 841 of file hostap_cs.c.

References dev_info, prism2_attach(), prism2_detach(), and version.

Here is the call graph for this function:

MODULE_AUTHOR "SSH Communications Security  Corp,
Jouni Malinen" 
 

MODULE_DESCRIPTION "Support for Intersil Prism2-based 802.11 wireless LAN ""cards (PC Card)."  ) 
 

module_exit exit_prism2_pccard  ) 
 

module_init init_prism2_pccard  ) 
 

MODULE_LICENSE "GPL"  ) 
 

MODULE_PARM ignore_cis_vcc ,
"i" 
 

MODULE_PARM irq_list ,
"1-4i" 
 

MODULE_PARM irq_mask ,
"i" 
 

MODULE_PARM_DESC ignore_cis_vcc ,
"Ignore broken CIS VCC entry" 
 

MODULE_SUPPORTED_DEVICE "Intersil Prism2-based WLAN cards (PC Card)"  ) 
 

static dev_link_t* prism2_attach void  ) [static]
 

Definition at line 383 of file hostap_cs.c.

References cs_error(), dev_info, dev_list, prism2_detach(), prism2_event(), prism2_init_local_data(), prism2_pccard_funcs, and prism2_release().

Referenced by init_prism2_pccard().

Here is the call graph for this function:

static int prism2_config dev_link_t * link  ) [static]
 

Definition at line 509 of file hostap_cs.c.

References CFG_CHECK2, CISTPL_CONFIG, CS_CHECK, cs_error(), dev_info, ignore_cis_vcc, irq_list, irq_mask, prism2_hw_config(), prism2_init_dev(), and prism2_release().

Referenced by prism2_event().

Here is the call graph for this function:

static void prism2_detach dev_link_t * link  ) [static]
 

Definition at line 448 of file hostap_cs.c.

References cs_error(), dev_info, dev_list, prism2_free_local_data(), and prism2_release().

Referenced by exit_prism2_pccard(), init_prism2_pccard(), and prism2_attach().

Here is the call graph for this function:

static int prism2_event event_t event,
int priority,
event_callback_args_t * args
[static]
 

Definition at line 745 of file hostap_cs.c.

References dev_info, hostap_netif_stop_queues(), prism2_config(), prism2_hw_config(), prism2_hw_shutdown(), and prism2_release().

Referenced by prism2_attach().

Here is the call graph for this function:

static int prism2_pccard_card_present local_info_t * local  ) [static]
 

Definition at line 217 of file hostap_cs.c.

Referenced by prism2_pccard_cor_sreset(), and prism2_pccard_genesis_reset().

static void prism2_pccard_cor_sreset local_info_t * local  ) [static]
 

Definition at line 226 of file hostap_cs.c.

References prism2_pccard_card_present().

Here is the call graph for this function:

static int prism2_pccard_dev_close local_info_t * local  ) [static]
 

Definition at line 337 of file hostap_cs.c.

References prism2_release().

Here is the call graph for this function:

static int prism2_pccard_dev_open local_info_t * local  ) [static]
 

Definition at line 330 of file hostap_cs.c.

static void prism2_pccard_genesis_reset local_info_t * local,
int hcr
[static]
 

Definition at line 270 of file hostap_cs.c.

References prism2_pccard_card_present().

Here is the call graph for this function:

static void prism2_release u_long arg  ) [static]
 

Definition at line 710 of file hostap_cs.c.

References dev_info, and prism2_hw_shutdown().

Referenced by exit_prism2_pccard(), prism2_attach(), prism2_config(), prism2_detach(), prism2_event(), and prism2_pccard_dev_close().

Here is the call graph for this function:


Variable Documentation

dev_info_t dev_info = "hostap_cs" [static]
 

Definition at line 47 of file hostap_cs.c.

Referenced by exit_prism2_pccard(), init_prism2_pccard(), prism2_attach(), prism2_config(), prism2_detach(), prism2_event(), and prism2_release().

dev_link_t* dev_list = NULL [static]
 

Definition at line 48 of file hostap_cs.c.

Referenced by exit_prism2_pccard(), prism2_attach(), and prism2_detach().

int ignore_cis_vcc = 0 [static]
 

Definition at line 63 of file hostap_cs.c.

Referenced by prism2_config().

int irq_list[4] = { -1 } [static]
 

Definition at line 60 of file hostap_cs.c.

Referenced by prism2_config().

unsigned int irq_mask = 0xdeb8 [static]
 

Definition at line 57 of file hostap_cs.c.

Referenced by prism2_config().

struct prism2_helper_functions prism2_pccard_funcs [static]
 

Initial value:

{
        .card_present   = prism2_pccard_card_present,
        .cor_sreset     = prism2_pccard_cor_sreset,
        .dev_open       = prism2_pccard_dev_open,
        .dev_close      = prism2_pccard_dev_close,
        .genesis_reset  = prism2_pccard_genesis_reset,
}

Definition at line 362 of file hostap_cs.c.

Referenced by prism2_attach().

char* version = PRISM2_VERSION " (Jouni Malinen <jkmaline@cc.hut.fi>)" [static]
 

Definition at line 46 of file hostap_cs.c.

Referenced by init_prism2_pccard().


Generated on Mon Nov 21 16:00:20 2005 for openwifi by  doxygen 1.4.1