Loading drivers/net/wireless/ath/ath9k/htc_drv_txrx.c +10 −0 Original line number Diff line number Diff line Loading @@ -448,6 +448,7 @@ static void ath9k_htc_tx_process(struct ath9k_htc_priv *priv, struct ieee80211_conf *cur_conf = &priv->hw->conf; bool txok; int slot; int hdrlen, padsize; slot = strip_drv_header(priv, skb); if (slot < 0) { Loading Loading @@ -504,6 +505,15 @@ static void ath9k_htc_tx_process(struct ath9k_htc_priv *priv, ath9k_htc_tx_clear_slot(priv, slot); /* Remove padding before handing frame back to mac80211 */ hdrlen = ieee80211_get_hdrlen_from_skb(skb); padsize = hdrlen & 3; if (padsize && skb->len > hdrlen + padsize) { memmove(skb->data + padsize, skb->data, hdrlen); skb_pull(skb, padsize); } /* Send status to mac80211 */ ieee80211_tx_status(priv->hw, skb); } Loading drivers/net/wireless/ath/ath9k/init.c +2 −1 Original line number Diff line number Diff line Loading @@ -834,7 +834,8 @@ void ath9k_set_hw_capab(struct ath_softc *sc, struct ieee80211_hw *hw) IEEE80211_HW_PS_NULLFUNC_STACK | IEEE80211_HW_SPECTRUM_MGMT | IEEE80211_HW_REPORTS_TX_ACK_STATUS | IEEE80211_HW_SUPPORTS_RC_TABLE; IEEE80211_HW_SUPPORTS_RC_TABLE | IEEE80211_HW_SUPPORTS_HT_CCK_RATES; if (sc->sc_ah->caps.hw_caps & ATH9K_HW_CAP_HT) { hw->flags |= IEEE80211_HW_AMPDU_AGGREGATION; Loading drivers/net/wireless/ath/ath9k/main.c +1 −2 Original line number Diff line number Diff line Loading @@ -173,8 +173,7 @@ static void ath_restart_work(struct ath_softc *sc) { ieee80211_queue_delayed_work(sc->hw, &sc->tx_complete_work, 0); if (AR_SREV_9340(sc->sc_ah) || AR_SREV_9485(sc->sc_ah) || AR_SREV_9550(sc->sc_ah)) if (AR_SREV_9340(sc->sc_ah) || AR_SREV_9330(sc->sc_ah)) ieee80211_queue_delayed_work(sc->hw, &sc->hw_pll_work, msecs_to_jiffies(ATH_PLL_WORK_INTERVAL)); Loading drivers/net/wireless/ath/carl9170/main.c +2 −1 Original line number Diff line number Diff line Loading @@ -1860,7 +1860,8 @@ void *carl9170_alloc(size_t priv_size) IEEE80211_HW_PS_NULLFUNC_STACK | IEEE80211_HW_NEED_DTIM_BEFORE_ASSOC | IEEE80211_HW_SUPPORTS_RC_TABLE | IEEE80211_HW_SIGNAL_DBM; IEEE80211_HW_SIGNAL_DBM | IEEE80211_HW_SUPPORTS_HT_CCK_RATES; if (!modparam_noht) { /* Loading drivers/net/wireless/hostap/hostap_ioctl.c +2 −2 Original line number Diff line number Diff line Loading @@ -523,9 +523,9 @@ static int prism2_ioctl_giwaplist(struct net_device *dev, data->length = prism2_ap_get_sta_qual(local, addr, qual, IW_MAX_AP, 1); memcpy(extra, &addr, sizeof(struct sockaddr) * data->length); memcpy(extra, addr, sizeof(struct sockaddr) * data->length); data->flags = 1; /* has quality information */ memcpy(extra + sizeof(struct sockaddr) * data->length, &qual, memcpy(extra + sizeof(struct sockaddr) * data->length, qual, sizeof(struct iw_quality) * data->length); kfree(addr); Loading Loading
drivers/net/wireless/ath/ath9k/htc_drv_txrx.c +10 −0 Original line number Diff line number Diff line Loading @@ -448,6 +448,7 @@ static void ath9k_htc_tx_process(struct ath9k_htc_priv *priv, struct ieee80211_conf *cur_conf = &priv->hw->conf; bool txok; int slot; int hdrlen, padsize; slot = strip_drv_header(priv, skb); if (slot < 0) { Loading Loading @@ -504,6 +505,15 @@ static void ath9k_htc_tx_process(struct ath9k_htc_priv *priv, ath9k_htc_tx_clear_slot(priv, slot); /* Remove padding before handing frame back to mac80211 */ hdrlen = ieee80211_get_hdrlen_from_skb(skb); padsize = hdrlen & 3; if (padsize && skb->len > hdrlen + padsize) { memmove(skb->data + padsize, skb->data, hdrlen); skb_pull(skb, padsize); } /* Send status to mac80211 */ ieee80211_tx_status(priv->hw, skb); } Loading
drivers/net/wireless/ath/ath9k/init.c +2 −1 Original line number Diff line number Diff line Loading @@ -834,7 +834,8 @@ void ath9k_set_hw_capab(struct ath_softc *sc, struct ieee80211_hw *hw) IEEE80211_HW_PS_NULLFUNC_STACK | IEEE80211_HW_SPECTRUM_MGMT | IEEE80211_HW_REPORTS_TX_ACK_STATUS | IEEE80211_HW_SUPPORTS_RC_TABLE; IEEE80211_HW_SUPPORTS_RC_TABLE | IEEE80211_HW_SUPPORTS_HT_CCK_RATES; if (sc->sc_ah->caps.hw_caps & ATH9K_HW_CAP_HT) { hw->flags |= IEEE80211_HW_AMPDU_AGGREGATION; Loading
drivers/net/wireless/ath/ath9k/main.c +1 −2 Original line number Diff line number Diff line Loading @@ -173,8 +173,7 @@ static void ath_restart_work(struct ath_softc *sc) { ieee80211_queue_delayed_work(sc->hw, &sc->tx_complete_work, 0); if (AR_SREV_9340(sc->sc_ah) || AR_SREV_9485(sc->sc_ah) || AR_SREV_9550(sc->sc_ah)) if (AR_SREV_9340(sc->sc_ah) || AR_SREV_9330(sc->sc_ah)) ieee80211_queue_delayed_work(sc->hw, &sc->hw_pll_work, msecs_to_jiffies(ATH_PLL_WORK_INTERVAL)); Loading
drivers/net/wireless/ath/carl9170/main.c +2 −1 Original line number Diff line number Diff line Loading @@ -1860,7 +1860,8 @@ void *carl9170_alloc(size_t priv_size) IEEE80211_HW_PS_NULLFUNC_STACK | IEEE80211_HW_NEED_DTIM_BEFORE_ASSOC | IEEE80211_HW_SUPPORTS_RC_TABLE | IEEE80211_HW_SIGNAL_DBM; IEEE80211_HW_SIGNAL_DBM | IEEE80211_HW_SUPPORTS_HT_CCK_RATES; if (!modparam_noht) { /* Loading
drivers/net/wireless/hostap/hostap_ioctl.c +2 −2 Original line number Diff line number Diff line Loading @@ -523,9 +523,9 @@ static int prism2_ioctl_giwaplist(struct net_device *dev, data->length = prism2_ap_get_sta_qual(local, addr, qual, IW_MAX_AP, 1); memcpy(extra, &addr, sizeof(struct sockaddr) * data->length); memcpy(extra, addr, sizeof(struct sockaddr) * data->length); data->flags = 1; /* has quality information */ memcpy(extra + sizeof(struct sockaddr) * data->length, &qual, memcpy(extra + sizeof(struct sockaddr) * data->length, qual, sizeof(struct iw_quality) * data->length); kfree(addr); Loading