]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - drivers/net/wireless/hostap/hostap_wlan.h
[PATCH] hostap: Remove extra defines
[mv-sheeva.git] / drivers / net / wireless / hostap / hostap_wlan.h
index 91beee50c9c914fb7b8a692bf5ee0e9cbf57415e..cc061e1560d39c7150f4770f063f89207f752f14 100644 (file)
@@ -2,7 +2,6 @@
 #define HOSTAP_WLAN_H
 
 #include "hostap_config.h"
-#include "hostap_crypt.h"
 #include "hostap_common.h"
 
 #define MAX_PARM_DEVICES 8
  * prism2_send_mgmt() sends these with dev_queue_xmit() to prism2_tx(). */
 #define ETH_P_HOSTAP ETH_P_CONTROL
 
-#ifndef ARPHRD_IEEE80211
-#define ARPHRD_IEEE80211 801
-#endif
-#ifndef ARPHRD_IEEE80211_PRISM
-#define ARPHRD_IEEE80211_PRISM 802
-#endif
-
 /* ARPHRD_IEEE80211_PRISM uses a bloated version of Prism2 RX frame header
  * (from linux-wlan-ng) */
 struct linux_wlan_ng_val {
@@ -534,20 +526,13 @@ struct prism2_frag_entry {
 };
 
 
-struct prism2_crypt_data {
-       struct list_head list; /* delayed deletion list */
-       struct hostap_crypto_ops *ops;
-       void *priv;
-       atomic_t refcnt;
-};
-
 struct hostap_cmd_queue {
        struct list_head list;
        wait_queue_head_t compl;
        volatile enum { CMD_SLEEP, CMD_CALLBACK, CMD_COMPLETED } type;
-       void (*callback)(struct net_device *dev, void *context, u16 resp0,
+       void (*callback)(struct net_device *dev, long context, u16 resp0,
                         u16 res);
-       void *context;
+       long context;
        u16 cmd, param0, param1;
        u16 resp0, res;
        volatile int issued, issuing;
@@ -765,7 +750,7 @@ struct local_info {
 
 #define WEP_KEYS 4
 #define WEP_KEY_LEN 13
-       struct prism2_crypt_data *crypt[WEP_KEYS];
+       struct ieee80211_crypt_data *crypt[WEP_KEYS];
        int tx_keyidx; /* default TX key index (crypt[tx_keyidx]) */
        struct timer_list crypt_deinit_timer;
        struct list_head crypt_deinit_list;
@@ -795,10 +780,6 @@ struct local_info {
 
        struct prism2_helper_functions *func;
 
-       int bus_master_threshold_tx;
-       int bus_master_threshold_rx;
-       u8 *bus_m1_buf;
-
        u8 *pda;
        int fw_ap;
 #define PRISM2_FW_VER(major, minor, variant) \
@@ -824,10 +805,8 @@ struct local_info {
 
        int host_roaming;
        unsigned long last_join_time; /* time of last JoinRequest */
-       struct hfa384x_scan_result *last_scan_results;
+       struct hfa384x_hostscan_result *last_scan_results;
        int last_scan_results_count;
-       struct hfa384x_hostscan_result *last_hostscan_results;
-       int last_hostscan_results_count;
        enum { PRISM2_SCAN, PRISM2_HOSTSCAN } last_scan_type;
        struct work_struct info_queue;
        long pending_info; /* bit field of pending info_queue items */
@@ -890,35 +869,8 @@ struct local_info {
        int io_debug_enabled;
 #endif /* PRISM2_IO_DEBUG */
 
-       /* struct local_info is used also in hostap.o that does not define
-        * any PRISM2_{PCCARD,PLX,PCI}. Make sure that the hardware version
-        * specific fields are in the end of the struct (these could also be
-        * moved to void *priv or something like that). */
-#ifdef PRISM2_PCCARD
-       dev_node_t node;
-       dev_link_t *link;
-       int sandisk_connectplus;
-#endif /* PRISM2_PCCARD */
-
-#ifdef PRISM2_PLX
-       void __iomem *attr_mem;
-       unsigned int cor_offset;
-#endif /* PRISM2_PLX */
-
-#ifdef PRISM2_PCI
-       void __iomem *mem_start;
-#ifdef PRISM2_BUS_MASTER
-       /* bus master for BAP0 (TX) */
-       int bus_m0_tx_idx;
-       u8 *bus_m0_buf;
-
-       /* bus master for BAP1 (RX) */
-       struct sk_buff *rx_skb;
-#endif /* PRISM2_BUS_MASTER */
-#endif /* PRISM2_PCI */
-
-       /* NOTE! Do not add common entries here after hardware version
-        * specific blocks. */
+       /* Pointer to hardware model specific (cs,pci,plx) private data. */
+       void *hw_priv;
 };
 
 
@@ -951,16 +903,21 @@ struct hostap_interface {
 
 #define HOSTAP_SKB_TX_DATA_MAGIC 0xf08a36a2
 
-/* TX meta data - stored in skb->cb buffer, so this must be not increase over
- * 48-byte limit */
+/*
+ * TX meta data - stored in skb->cb buffer, so this must not be increased over
+ * the 40-byte limit
+ */
 struct hostap_skb_tx_data {
-       unsigned int magic; /* HOSTAP_SKB_TX_DATA_MAGIC */
-       int rate; /* transmit rate */
+       u32 magic; /* HOSTAP_SKB_TX_DATA_MAGIC */
+       u8 rate; /* transmit rate */
+#define HOSTAP_TX_FLAGS_WDS BIT(0)
+#define HOSTAP_TX_FLAGS_BUFFERED_FRAME BIT(1)
+#define HOSTAP_TX_FLAGS_ADD_MOREDATA BIT(2)
+       u8 flags; /* HOSTAP_TX_FLAGS_* */
+       u16 tx_cb_idx;
        struct hostap_interface *iface;
        unsigned long jiffies; /* queueing timestamp */
-       int wds;
        unsigned short ethertype;
-       int tx_cb_idx;
 };