]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - drivers/net/wireless/iwlwifi/iwl-dev.h
iwlwifi: drop struct iwl3945_hw_key
[mv-sheeva.git] / drivers / net / wireless / iwlwifi / iwl-dev.h
index ec9a13846edde70eece54a1039d3ad948675254c..427489a1f07a02d32a68b723afbd6a08ed0eee3b 100644 (file)
@@ -70,6 +70,7 @@ extern struct iwl_ops iwl5000_ops;
 extern struct iwl_lib_ops iwl5000_lib;
 extern struct iwl_hcmd_ops iwl5000_hcmd;
 extern struct iwl_hcmd_utils_ops iwl5000_hcmd_utils;
+extern struct iwl_station_mgmt_ops iwl5000_station_mgmt;
 
 /* shared functions from iwl-5000.c */
 extern u16 iwl5000_get_hcmd_size(u8 cmd_id, u16 len);
@@ -360,12 +361,16 @@ struct iwl_host_cmd {
 
 /**
  * struct iwl_rx_queue - Rx queue
+ * @bd: driver's pointer to buffer of receive buffer descriptors (rbd)
+ * @dma_addr: bus address of buffer of receive buffer descriptors (rbd)
  * @read: Shared index to newest available Rx buffer
  * @write: Shared index to oldest written Rx packet
  * @free_count: Number of pre-allocated buffers in rx_free
  * @rx_free: list of free SKBs for use
  * @rx_used: List of Rx buffers with no SKB
  * @need_update: flag to indicate we need to update read/write index
+ * @rb_stts: driver's pointer to receive buffer status
+ * @rb_stts_dma: bus address of receive buffer status
  *
  * NOTE:  rx_free and rx_used are used as a FIFO for iwl_rx_mem_buffers
  */
@@ -498,18 +503,13 @@ struct iwl3945_tid_data {
        u16 seq_number;
 };
 
-struct iwl3945_hw_key {
-       enum ieee80211_key_alg alg;
-       int keylen;
-       u8 key[32];
-};
 
 struct iwl3945_station_entry {
        struct iwl3945_addsta_cmd sta;
        struct iwl3945_tid_data tid[MAX_TID_COUNT];
        u8 used;
        u8 ps_status;
-       struct iwl3945_hw_key keyinfo;
+       struct iwl_hw_key keyinfo;
 };
 
 struct iwl_station_entry {
@@ -818,6 +818,21 @@ enum {
        MEASUREMENT_ACTIVE = (1 << 1),
 };
 
+/* interrupt statistics */
+struct isr_statistics {
+       u32 hw;
+       u32 sw;
+       u32 sw_err;
+       u32 sch;
+       u32 alive;
+       u32 rfkill;
+       u32 ctkill;
+       u32 wakeup;
+       u32 rx;
+       u32 rx_handlers[REPLY_MAX];
+       u32 tx;
+       u32 unhandled;
+};
 
 #define IWL_MAX_NUM_QUEUES     20 /* FIXME: do dynamic allocation */
 
@@ -873,9 +888,7 @@ struct iwl_priv {
        unsigned long scan_start_tsf;
        void *scan;
        int scan_bands;
-       int one_direct_scan;
-       u8 direct_ssid_len;
-       u8 direct_ssid[IW_ESSID_MAX_SIZE];
+       struct cfg80211_scan_request *scan_request;
        u8 scan_tx_ant[IEEE80211_NUM_BANDS];
        u8 mgmt_tx_ant;
 
@@ -915,7 +928,6 @@ struct iwl_priv {
        const struct iwl_rxon_cmd active_rxon;
        struct iwl_rxon_cmd staging_rxon;
 
-       int error_recovering;
        struct iwl_rxon_cmd recovery_rxon;
 
        /* 1st responses from initialize and runtime uCode images.
@@ -974,6 +986,9 @@ struct iwl_priv {
                u64 bytes;
        } tx_stats[3], rx_stats[3];
 
+       /* counts interrupts */
+       struct isr_statistics isr_stats;
+
        struct iwl_power_mgr power_data;
 
        struct iwl_notif_statistics statistics;
@@ -1055,7 +1070,6 @@ struct iwl_priv {
 
        struct tasklet_struct irq_tasklet;
 
-       struct delayed_work set_power_save;
        struct delayed_work init_alive_start;
        struct delayed_work alive_start;
        struct delayed_work scan_check;