* [PATCH RESEND 3.9 1/4] iwlwifi: mvm: don't use cts to self
2013-07-15 11:46 [PATCH RESEND 3.9 0/4] Enable 7000 device family on 3.9 Emmanuel Grumbach
@ 2013-07-15 11:46 ` Emmanuel Grumbach
2013-07-15 11:46 ` [PATCH RESEND 3.9 2/4] iwlwifi: mvm: support BSS only Emmanuel Grumbach
` (2 subsequent siblings)
3 siblings, 0 replies; 5+ messages in thread
From: Emmanuel Grumbach @ 2013-07-15 11:46 UTC (permalink / raw)
To: stable; +Cc: linux-wireless
From: Dor Shaish <dor.shaish@intel.com>
commit cc7ee2bab3d90b0a09651dcfa2d0c9ec1a115bc8 upstream.
The current fw doesn't currently support cts to self. There
is a bug in the fw that prevents us from using cts to self.
Use full protection (including RTS) for now.
Signed-off-by: Dor Shaish <dor.shaish@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
---
drivers/net/wireless/iwlwifi/mvm/mac-ctxt.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/wireless/iwlwifi/mvm/mac-ctxt.c b/drivers/net/wireless/iwlwifi/mvm/mac-ctxt.c
index bf76b17..864cd6d 100644
--- a/drivers/net/wireless/iwlwifi/mvm/mac-ctxt.c
+++ b/drivers/net/wireless/iwlwifi/mvm/mac-ctxt.c
@@ -553,9 +553,9 @@ static void iwl_mvm_mac_ctxt_cmd_common(struct iwl_mvm *mvm,
if (vif->bss_conf.qos)
cmd->qos_flags |= cpu_to_le32(MAC_QOS_FLG_UPDATE_EDCA);
+ /* Don't use cts to self as the fw doesn't support it currently. */
if (vif->bss_conf.use_cts_prot)
- cmd->protection_flags |= cpu_to_le32(MAC_PROT_FLG_TGG_PROTECT |
- MAC_PROT_FLG_SELF_CTS_EN);
+ cmd->protection_flags |= cpu_to_le32(MAC_PROT_FLG_TGG_PROTECT);
/*
* I think that we should enable these 2 flags regardless the HT PROT
--
1.7.10.4
^ permalink raw reply related [flat|nested] 5+ messages in thread* [PATCH RESEND 3.9 2/4] iwlwifi: mvm: support BSS only
2013-07-15 11:46 [PATCH RESEND 3.9 0/4] Enable 7000 device family on 3.9 Emmanuel Grumbach
2013-07-15 11:46 ` [PATCH RESEND 3.9 1/4] iwlwifi: mvm: don't use cts to self Emmanuel Grumbach
@ 2013-07-15 11:46 ` Emmanuel Grumbach
2013-07-15 11:46 ` [PATCH RESEND 3.9 3/4] iwlwifi: mvm: adjust firmware D3 configuration API Emmanuel Grumbach
2013-07-15 11:46 ` [PATCH RESEND 3.9 4/4] iwlwifi: bump required firmware API version for 3160/7260 Emmanuel Grumbach
3 siblings, 0 replies; 5+ messages in thread
From: Emmanuel Grumbach @ 2013-07-15 11:46 UTC (permalink / raw)
To: stable; +Cc: linux-wireless, Emmanuel Grumbach
Only BSS is support in 3.9. In later kernels, other modes
have been fixed and tested to work.
This will at least allow user to use the regular wifi
functionality.
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
---
drivers/net/wireless/iwlwifi/mvm/mac80211.c | 24 +-----------------------
1 file changed, 1 insertion(+), 23 deletions(-)
diff --git a/drivers/net/wireless/iwlwifi/mvm/mac80211.c b/drivers/net/wireless/iwlwifi/mvm/mac80211.c
index 8572358..c9569a0 100644
--- a/drivers/net/wireless/iwlwifi/mvm/mac80211.c
+++ b/drivers/net/wireless/iwlwifi/mvm/mac80211.c
@@ -76,23 +76,6 @@
#include "fw-api-scan.h"
#include "iwl-phy-db.h"
-static const struct ieee80211_iface_limit iwl_mvm_limits[] = {
- {
- .max = 1,
- .types = BIT(NL80211_IFTYPE_STATION) |
- BIT(NL80211_IFTYPE_AP),
- },
-};
-
-static const struct ieee80211_iface_combination iwl_mvm_iface_combinations[] = {
- {
- .num_different_channels = 1,
- .max_interfaces = 3,
- .limits = iwl_mvm_limits,
- .n_limits = ARRAY_SIZE(iwl_mvm_limits),
- },
-};
-
int iwl_mvm_mac_setup_register(struct iwl_mvm *mvm)
{
struct ieee80211_hw *hw = mvm->hw;
@@ -126,17 +109,12 @@ int iwl_mvm_mac_setup_register(struct iwl_mvm *mvm)
hw->vif_data_size = sizeof(struct iwl_mvm_vif);
hw->chanctx_data_size = sizeof(struct iwl_mvm_phy_ctxt);
- hw->wiphy->interface_modes = BIT(NL80211_IFTYPE_STATION) |
- BIT(NL80211_IFTYPE_AP);
+ hw->wiphy->interface_modes = BIT(NL80211_IFTYPE_STATION);
hw->wiphy->flags |= WIPHY_FLAG_CUSTOM_REGULATORY |
WIPHY_FLAG_DISABLE_BEACON_HINTS |
WIPHY_FLAG_IBSS_RSN;
- hw->wiphy->iface_combinations = iwl_mvm_iface_combinations;
- hw->wiphy->n_iface_combinations =
- ARRAY_SIZE(iwl_mvm_iface_combinations);
-
hw->wiphy->max_remain_on_channel_duration = 500;
hw->max_listen_interval = IWL_CONN_MAX_LISTEN_INTERVAL;
--
1.7.10.4
^ permalink raw reply related [flat|nested] 5+ messages in thread* [PATCH RESEND 3.9 3/4] iwlwifi: mvm: adjust firmware D3 configuration API
2013-07-15 11:46 [PATCH RESEND 3.9 0/4] Enable 7000 device family on 3.9 Emmanuel Grumbach
2013-07-15 11:46 ` [PATCH RESEND 3.9 1/4] iwlwifi: mvm: don't use cts to self Emmanuel Grumbach
2013-07-15 11:46 ` [PATCH RESEND 3.9 2/4] iwlwifi: mvm: support BSS only Emmanuel Grumbach
@ 2013-07-15 11:46 ` Emmanuel Grumbach
2013-07-15 11:46 ` [PATCH RESEND 3.9 4/4] iwlwifi: bump required firmware API version for 3160/7260 Emmanuel Grumbach
3 siblings, 0 replies; 5+ messages in thread
From: Emmanuel Grumbach @ 2013-07-15 11:46 UTC (permalink / raw)
To: stable; +Cc: linux-wireless
From: Johannes Berg <johannes.berg@intel.com>
commit dfcb4c3aacedee6838e436fb575b31e138505203 upstream.
The D3 firmware API changed to include a new field, adjust
the driver to it to avoid getting an NMI when configuring.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
---
drivers/net/wireless/iwlwifi/mvm/fw-api-d3.h | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/net/wireless/iwlwifi/mvm/fw-api-d3.h b/drivers/net/wireless/iwlwifi/mvm/fw-api-d3.h
index cf6f9a0..937665f 100644
--- a/drivers/net/wireless/iwlwifi/mvm/fw-api-d3.h
+++ b/drivers/net/wireless/iwlwifi/mvm/fw-api-d3.h
@@ -75,13 +75,15 @@ enum iwl_d3_wakeup_flags {
* struct iwl_d3_manager_config - D3 manager configuration command
* @min_sleep_time: minimum sleep time (in usec)
* @wakeup_flags: wakeup flags, see &enum iwl_d3_wakeup_flags
+ * @wakeup_host_timer: force wakeup after this many seconds
*
* The structure is used for the D3_CONFIG_CMD command.
*/
struct iwl_d3_manager_config {
__le32 min_sleep_time;
__le32 wakeup_flags;
-} __packed; /* D3_MANAGER_CONFIG_CMD_S_VER_3 */
+ __le32 wakeup_host_timer;
+} __packed; /* D3_MANAGER_CONFIG_CMD_S_VER_4 */
/* TODO: OFFLOADS_QUERY_API_S_VER_1 */
--
1.7.10.4
^ permalink raw reply related [flat|nested] 5+ messages in thread* [PATCH RESEND 3.9 4/4] iwlwifi: bump required firmware API version for 3160/7260
2013-07-15 11:46 [PATCH RESEND 3.9 0/4] Enable 7000 device family on 3.9 Emmanuel Grumbach
` (2 preceding siblings ...)
2013-07-15 11:46 ` [PATCH RESEND 3.9 3/4] iwlwifi: mvm: adjust firmware D3 configuration API Emmanuel Grumbach
@ 2013-07-15 11:46 ` Emmanuel Grumbach
3 siblings, 0 replies; 5+ messages in thread
From: Emmanuel Grumbach @ 2013-07-15 11:46 UTC (permalink / raw)
To: stable; +Cc: linux-wireless
From: Johannes Berg <johannes.berg@intel.com>
commit a2d0909a687b4d250cc2b7481072e361678745ba upstream.
As the firmware API has changed significantly and we don't
have support code for the old APIs, bump the version to be
able to release the version 7 API firmware.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
---
drivers/net/wireless/iwlwifi/pcie/7000.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/drivers/net/wireless/iwlwifi/pcie/7000.c b/drivers/net/wireless/iwlwifi/pcie/7000.c
index 6e35b2b..25c33b0 100644
--- a/drivers/net/wireless/iwlwifi/pcie/7000.c
+++ b/drivers/net/wireless/iwlwifi/pcie/7000.c
@@ -31,16 +31,16 @@
#include "cfg.h"
/* Highest firmware API version supported */
-#define IWL7260_UCODE_API_MAX 6
-#define IWL3160_UCODE_API_MAX 6
+#define IWL7260_UCODE_API_MAX 7
+#define IWL3160_UCODE_API_MAX 7
/* Oldest version we won't warn about */
-#define IWL7260_UCODE_API_OK 6
-#define IWL3160_UCODE_API_OK 6
+#define IWL7260_UCODE_API_OK 7
+#define IWL3160_UCODE_API_OK 7
/* Lowest firmware API version supported */
-#define IWL7260_UCODE_API_MIN 6
-#define IWL3160_UCODE_API_MIN 6
+#define IWL7260_UCODE_API_MIN 7
+#define IWL3160_UCODE_API_MIN 7
/* NVM versions */
#define IWL7260_NVM_VERSION 0x0a1d
--
1.7.10.4
^ permalink raw reply related [flat|nested] 5+ messages in thread