1 /* Raytheon wireless LAN PCMCIA card driver for Linux 2 A PCMCIA client driver for the Raylink wireless network card 3 Written by Corey Thomas 4 */ 5 6 #ifndef RAYLINK_H 7 8 struct beacon_rx { 9 struct mac_header mac; 10 UCHAR timestamp[8]; 11 UCHAR beacon_intvl[2]; 12 UCHAR capability[2]; 13 UCHAR elements[sizeof(struct essid_element) 14 + sizeof(struct rates_element) 15 + sizeof(struct freq_hop_element) 16 + sizeof(struct japan_call_sign_element) 17 + sizeof(struct tim_element)]; 18 }; 19 20 /* Return values for get_free{,_tx}_ccs */ 21 #define ECCSFULL (-1) 22 #define ECCSBUSY (-2) 23 #define ECARDGONE (-3) 24 25 typedef struct ray_dev_t { 26 int card_status; 27 int authentication_state; 28 void __iomem *sram; /* pointer to beginning of shared RAM */ 29 void __iomem *amem; /* pointer to attribute mem window */ 30 void __iomem *rmem; /* pointer to receive buffer window */ 31 struct pcmcia_device *finder; /* pointer back to struct pcmcia_device for card */ 32 struct timer_list timer; 33 unsigned long tx_ccs_lock; 34 unsigned long ccs_lock; 35 int dl_param_ccs; 36 union { 37 struct b4_startup_params b4; 38 struct b5_startup_params b5; 39 } sparm; 40 int timeout_flag; 41 UCHAR supported_rates[8]; 42 UCHAR japan_call_sign[12]; 43 struct startup_res_6 startup_res; 44 int num_multi; 45 /* Network parameters from start/join */ 46 UCHAR bss_id[6]; 47 UCHAR auth_id[6]; 48 UCHAR net_default_tx_rate; 49 UCHAR encryption; 50 struct net_device_stats stats; 51 52 UCHAR net_type; 53 UCHAR sta_type; 54 UCHAR fw_ver; 55 UCHAR fw_bld; 56 UCHAR fw_var; 57 UCHAR ASIC_version; 58 UCHAR assoc_id[2]; 59 UCHAR tib_length; 60 UCHAR last_rsl; 61 int beacon_rxed; 62 struct beacon_rx last_bcn; 63 iw_stats wstats; /* Wireless specific stats */ 64 #ifdef WIRELESS_SPY 65 struct iw_spy_data spy_data; 66 struct iw_public_data wireless_data; 67 #endif /* WIRELESS_SPY */ 68 69 } ray_dev_t; 70 /*****************************************************************************/ 71 72 #endif /* RAYLINK_H */ 73