iwlwifi: change IWL6000_UCODE_API_MAX to v4
authorWey-Yi Guy <wey-yi.w.guy@intel.com>
Fri, 21 Aug 2009 20:34:18 +0000 (13:34 -0700)
committerJohn W. Linville <linville@tuxdriver.com>
Fri, 28 Aug 2009 18:40:37 +0000 (14:40 -0400)
uCode version changed to v4 for 6000 series

The additional parameter added to v4 is providing current tx power for
each chain in tx statistics portion of "statistics notification"
command.

Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/iwlwifi/iwl-6000.c
drivers/net/wireless/iwlwifi/iwl-commands.h

index 383177db7de7e506eae390e97f30ad2112134349..33ef736a48578caacac0b0db4e83589e08b05f12 100644 (file)
@@ -46,8 +46,8 @@
 #include "iwl-5000-hw.h"
 
 /* Highest firmware API version supported */
-#define IWL6000_UCODE_API_MAX 3
-#define IWL6050_UCODE_API_MAX 3
+#define IWL6000_UCODE_API_MAX 4
+#define IWL6050_UCODE_API_MAX 4
 
 /* Lowest firmware API version supported */
 #define IWL6000_UCODE_API_MIN 1
index f4303843ff9bba50a6722df1c7e4de730873d5af..6b82d4ecd3ef4a3e064b3f7adbdd306f0edf58d0 100644 (file)
@@ -2930,6 +2930,20 @@ struct statistics_rx {
        struct statistics_rx_ht_phy ofdm_ht;
 } __attribute__ ((packed));
 
+/**
+ * struct statistics_tx_power - current tx power
+ *
+ * @ant_a: current tx power on chain a in 1/2 dB step
+ * @ant_b: current tx power on chain b in 1/2 dB step
+ * @ant_c: current tx power on chain c in 1/2 dB step
+ */
+struct statistics_tx_power {
+       u8 ant_a;
+       u8 ant_b;
+       u8 ant_c;
+       u8 reserved;
+} __attribute__ ((packed));
+
 struct statistics_tx_non_phy_agg {
        __le32 ba_timeout;
        __le32 ba_reschedule_frames;
@@ -2941,8 +2955,6 @@ struct statistics_tx_non_phy_agg {
        __le32 underrun;
        __le32 bt_prio_kill;
        __le32 rx_ba_rsp_cnt;
-       __le32 reserved2;
-       __le32 reserved3;
 } __attribute__ ((packed));
 
 struct statistics_tx {
@@ -2961,6 +2973,8 @@ struct statistics_tx {
        __le32 cts_timeout_collision;
        __le32 ack_or_ba_timeout_collision;
        struct statistics_tx_non_phy_agg agg;
+       struct statistics_tx_power tx_power;
+       __le32 reserved1;
 } __attribute__ ((packed));