summaryrefslogtreecommitdiff
path: root/dev.h
diff options
context:
space:
mode:
Diffstat (limited to 'dev.h')
-rw-r--r--dev.h34
1 files changed, 18 insertions, 16 deletions
diff --git a/dev.h b/dev.h
index 9e70bfe..4a55d4b 100644
--- a/dev.h
+++ b/dev.h
@@ -27,7 +27,7 @@
#include <net/mac80211.h>
#define MWL_DRV_NAME KBUILD_MODNAME
-#define MWL_DRV_VERSION "10.3.0.17-20160531-1"
+#define MWL_DRV_VERSION "10.3.0.18-20160804"
/* Map to 0x80000000 (Bus control) on BAR0 */
#define MACREG_REG_H2A_INTERRUPT_EVENTS 0x00000C18 /* (From host to ARM) */
@@ -147,6 +147,14 @@ struct mwl_chip_info {
int antenna_rx;
};
+struct mwl_device_pwr_tbl {
+ u8 channel;
+ u8 tx_pwr[SYSADPT_TX_POWER_LEVEL_TOTAL];
+ u8 dfs_capable;
+ u8 ax_ant;
+ u8 cdd;
+};
+
struct mwl_tx_pwr_tbl {
u8 channel;
u8 setcap;
@@ -278,6 +286,13 @@ struct mwl_ampdu_stream {
struct mwl_priv {
struct ieee80211_hw *hw;
struct firmware *fw_ucode;
+ bool fw_device_pwrtbl;
+ bool forbidden_setting;
+ bool regulatory_set;
+ u32 fw_region_code;
+ char fw_alpha2[2];
+ u8 number_of_channels;
+ struct mwl_device_pwr_tbl device_pwr_tbl[SYSADPT_MAX_NUM_CHANNELS];
int chip_type;
struct device_node *dt_node;
@@ -293,7 +308,6 @@ struct mwl_priv {
u8 powinited;
u16 max_tx_pow[SYSADPT_TX_POWER_LEVEL_TOTAL]; /* max tx power (dBm) */
u16 target_powers[SYSADPT_TX_POWER_LEVEL_TOTAL]; /* target powers */
- u8 cal_tbl[200];
struct pci_dev *pdev;
struct device *dev;
@@ -363,7 +377,7 @@ struct mwl_priv {
/* ampdu stream information */
/* for ampdu stream */
struct {
- spinlock_t stream_lock;
+ spinlock_t stream_lock; /* for BA stream */
struct mwl_ampdu_stream ampdu[SYSADPT_TX_AMPDU_QUEUES];
} ____cacheline_aligned_in_smp;
struct work_struct watchdog_ba_handle;
@@ -382,8 +396,6 @@ struct mwl_priv {
u32 quiet_period;
int temperature;
- bool mfg_mode;
-
#ifdef CONFIG_DEBUG_FS
struct dentry *debugfs_phy;
u32 reg_type;
@@ -408,11 +420,6 @@ struct beacon_info {
u8 *ie_ht_ptr;
u8 *ie_vht_ptr;
u8 *ie_country_ptr;
-#ifdef CONFIG_MAC80211_MESH
- u8 *ie_meshid_ptr;
- u8 *ie_meshcfg_ptr;
- u8 *ie_meshchsw_ptr;
-#endif
u8 ie_wmm_len;
u8 ie_wsc_len;
u8 ie_rsn_len;
@@ -420,11 +427,6 @@ struct beacon_info {
u8 ie_ht_len;
u8 ie_vht_len;
u8 ie_country_len;
-#ifdef CONFIG_MAC80211_MESH
- u8 ie_meshid_len;
- u8 ie_meshcfg_len;
- u8 ie_meshchsw_len;
-#endif
};
struct mwl_vif {
@@ -473,7 +475,7 @@ struct mwl_sta {
bool is_amsdu_allowed;
/* for amsdu aggregation */
struct {
- spinlock_t amsdu_lock;
+ spinlock_t amsdu_lock; /* for amsdu */
struct mwl_amsdu_ctrl amsdu_ctrl;
} ____cacheline_aligned_in_smp;
u16 iv16;