Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit de03309b authored by John W. Linville's avatar John W. Linville
Browse files

Merge branch 'master' of...

Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless into for-davem
parents a969dd13 c9015b24
Loading
Loading
Loading
Loading
+1 −0
Original line number Original line Diff line number Diff line
@@ -143,6 +143,7 @@ struct ath_common {
	u32 keymax;
	u32 keymax;
	DECLARE_BITMAP(keymap, ATH_KEYMAX);
	DECLARE_BITMAP(keymap, ATH_KEYMAX);
	DECLARE_BITMAP(tkip_keymap, ATH_KEYMAX);
	DECLARE_BITMAP(tkip_keymap, ATH_KEYMAX);
	DECLARE_BITMAP(ccmp_keymap, ATH_KEYMAX);
	enum ath_crypt_caps crypt_caps;
	enum ath_crypt_caps crypt_caps;


	unsigned int clockrate;
	unsigned int clockrate;
+1 −1
Original line number Original line Diff line number Diff line
@@ -622,7 +622,7 @@ static int __ath9k_hw_init(struct ath_hw *ah)


	if (NR_CPUS > 1 && ah->config.serialize_regmode == SER_REG_MODE_AUTO) {
	if (NR_CPUS > 1 && ah->config.serialize_regmode == SER_REG_MODE_AUTO) {
		if (ah->hw_version.macVersion == AR_SREV_VERSION_5416_PCI ||
		if (ah->hw_version.macVersion == AR_SREV_VERSION_5416_PCI ||
		    ((AR_SREV_9160(ah) || AR_SREV_9280(ah)) &&
		    ((AR_SREV_9160(ah) || AR_SREV_9280(ah) || AR_SREV_9287(ah)) &&
		     !ah->is_pciexpress)) {
		     !ah->is_pciexpress)) {
			ah->config.serialize_regmode =
			ah->config.serialize_regmode =
				SER_REG_MODE_ON;
				SER_REG_MODE_ON;
+4 −3
Original line number Original line Diff line number Diff line
@@ -695,9 +695,9 @@ static bool ath_edma_get_buffers(struct ath_softc *sc,
			__skb_unlink(skb, &rx_edma->rx_fifo);
			__skb_unlink(skb, &rx_edma->rx_fifo);
			list_add_tail(&bf->list, &sc->rx.rxbuf);
			list_add_tail(&bf->list, &sc->rx.rxbuf);
			ath_rx_edma_buf_link(sc, qtype);
			ath_rx_edma_buf_link(sc, qtype);
		} else {
			bf = NULL;
		}
		}

		bf = NULL;
	}
	}


	*dest = bf;
	*dest = bf;
@@ -822,7 +822,8 @@ static bool ath9k_rx_accept(struct ath_common *common,
	 * descriptor does contain a valid key index. This has been observed
	 * descriptor does contain a valid key index. This has been observed
	 * mostly with CCMP encryption.
	 * mostly with CCMP encryption.
	 */
	 */
	if (rx_stats->rs_keyix == ATH9K_RXKEYIX_INVALID)
	if (rx_stats->rs_keyix == ATH9K_RXKEYIX_INVALID ||
	    !test_bit(rx_stats->rs_keyix, common->ccmp_keymap))
		rx_stats->rs_status &= ~ATH9K_RXERR_KEYMISS;
		rx_stats->rs_status &= ~ATH9K_RXERR_KEYMISS;


	if (!rx_stats->rs_datalen) {
	if (!rx_stats->rs_datalen) {
+4 −0
Original line number Original line Diff line number Diff line
@@ -556,6 +556,9 @@ int ath_key_config(struct ath_common *common,
		return -EIO;
		return -EIO;


	set_bit(idx, common->keymap);
	set_bit(idx, common->keymap);
	if (key->cipher == WLAN_CIPHER_SUITE_CCMP)
		set_bit(idx, common->ccmp_keymap);

	if (key->cipher == WLAN_CIPHER_SUITE_TKIP) {
	if (key->cipher == WLAN_CIPHER_SUITE_TKIP) {
		set_bit(idx + 64, common->keymap);
		set_bit(idx + 64, common->keymap);
		set_bit(idx, common->tkip_keymap);
		set_bit(idx, common->tkip_keymap);
@@ -582,6 +585,7 @@ void ath_key_delete(struct ath_common *common, struct ieee80211_key_conf *key)
		return;
		return;


	clear_bit(key->hw_key_idx, common->keymap);
	clear_bit(key->hw_key_idx, common->keymap);
	clear_bit(key->hw_key_idx, common->ccmp_keymap);
	if (key->cipher != WLAN_CIPHER_SUITE_TKIP)
	if (key->cipher != WLAN_CIPHER_SUITE_TKIP)
		return;
		return;


+12 −0
Original line number Original line Diff line number Diff line
@@ -796,6 +796,18 @@ int iwlagn_mac_sta_state(struct ieee80211_hw *hw,
	switch (op) {
	switch (op) {
	case ADD:
	case ADD:
		ret = iwlagn_mac_sta_add(hw, vif, sta);
		ret = iwlagn_mac_sta_add(hw, vif, sta);
		if (ret)
			break;
		/*
		 * Clear the in-progress flag, the AP station entry was added
		 * but we'll initialize LQ only when we've associated (which
		 * would also clear the in-progress flag). This is necessary
		 * in case we never initialize LQ because association fails.
		 */
		spin_lock_bh(&priv->sta_lock);
		priv->stations[iwl_sta_id(sta)].used &=
			~IWL_STA_UCODE_INPROGRESS;
		spin_unlock_bh(&priv->sta_lock);
		break;
		break;
	case REMOVE:
	case REMOVE:
		ret = iwlagn_mac_sta_remove(hw, vif, sta);
		ret = iwlagn_mac_sta_remove(hw, vif, sta);
Loading