diff options
Diffstat (limited to 'drivers/net/wireless/at76c50x-usb.c')
-rw-r--r-- | drivers/net/wireless/at76c50x-usb.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/net/wireless/at76c50x-usb.c b/drivers/net/wireless/at76c50x-usb.c index 1476314afa8a..298601436ee2 100644 --- a/drivers/net/wireless/at76c50x-usb.c +++ b/drivers/net/wireless/at76c50x-usb.c | |||
@@ -1728,7 +1728,7 @@ static void at76_mac80211_tx_callback(struct urb *urb) | |||
1728 | ieee80211_wake_queues(priv->hw); | 1728 | ieee80211_wake_queues(priv->hw); |
1729 | } | 1729 | } |
1730 | 1730 | ||
1731 | static int at76_mac80211_tx(struct ieee80211_hw *hw, struct sk_buff *skb) | 1731 | static void at76_mac80211_tx(struct ieee80211_hw *hw, struct sk_buff *skb) |
1732 | { | 1732 | { |
1733 | struct at76_priv *priv = hw->priv; | 1733 | struct at76_priv *priv = hw->priv; |
1734 | struct at76_tx_buffer *tx_buffer = priv->bulk_out_buffer; | 1734 | struct at76_tx_buffer *tx_buffer = priv->bulk_out_buffer; |
@@ -1741,7 +1741,8 @@ static int at76_mac80211_tx(struct ieee80211_hw *hw, struct sk_buff *skb) | |||
1741 | if (priv->tx_urb->status == -EINPROGRESS) { | 1741 | if (priv->tx_urb->status == -EINPROGRESS) { |
1742 | wiphy_err(priv->hw->wiphy, | 1742 | wiphy_err(priv->hw->wiphy, |
1743 | "%s called while tx urb is pending\n", __func__); | 1743 | "%s called while tx urb is pending\n", __func__); |
1744 | return NETDEV_TX_BUSY; | 1744 | dev_kfree_skb_any(skb); |
1745 | return; | ||
1745 | } | 1746 | } |
1746 | 1747 | ||
1747 | /* The following code lines are important when the device is going to | 1748 | /* The following code lines are important when the device is going to |
@@ -1755,7 +1756,8 @@ static int at76_mac80211_tx(struct ieee80211_hw *hw, struct sk_buff *skb) | |||
1755 | if (compare_ether_addr(priv->bssid, mgmt->bssid)) { | 1756 | if (compare_ether_addr(priv->bssid, mgmt->bssid)) { |
1756 | memcpy(priv->bssid, mgmt->bssid, ETH_ALEN); | 1757 | memcpy(priv->bssid, mgmt->bssid, ETH_ALEN); |
1757 | ieee80211_queue_work(hw, &priv->work_join_bssid); | 1758 | ieee80211_queue_work(hw, &priv->work_join_bssid); |
1758 | return NETDEV_TX_BUSY; | 1759 | dev_kfree_skb_any(skb); |
1760 | return; | ||
1759 | } | 1761 | } |
1760 | } | 1762 | } |
1761 | 1763 | ||
@@ -1795,8 +1797,6 @@ static int at76_mac80211_tx(struct ieee80211_hw *hw, struct sk_buff *skb) | |||
1795 | priv->tx_urb, | 1797 | priv->tx_urb, |
1796 | priv->tx_urb->hcpriv, priv->tx_urb->complete); | 1798 | priv->tx_urb->hcpriv, priv->tx_urb->complete); |
1797 | } | 1799 | } |
1798 | |||
1799 | return 0; | ||
1800 | } | 1800 | } |
1801 | 1801 | ||
1802 | static int at76_mac80211_start(struct ieee80211_hw *hw) | 1802 | static int at76_mac80211_start(struct ieee80211_hw *hw) |