ray_cs.h 2.3 KB

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