summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/mediatek/mt76/mt76x0/usb.c
diff options
context:
space:
mode:
authorLorenzo Bianconi2018-09-28 13:39:07 +0200
committerFelix Fietkau2018-10-01 12:34:44 +0200
commit66a9ccd6e3b71be80c66556e5a480edf6e248495 (patch)
treee829b2cf16ff742fdd6525ded5a1bab919c969bd /drivers/net/wireless/mediatek/mt76/mt76x0/usb.c
parentmt76x0: eeprom: load eeprom data from mtd by default (diff)
downloadkernel-qcow2-linux-66a9ccd6e3b71be80c66556e5a480edf6e248495.tar.gz
kernel-qcow2-linux-66a9ccd6e3b71be80c66556e5a480edf6e248495.tar.xz
kernel-qcow2-linux-66a9ccd6e3b71be80c66556e5a480edf6e248495.zip
mt76x0: usb: move mt76x0u_tx_prepare_skb in usb.c
Move mt76x0u_tx_prepare_skb routine in usb module in order to remove leftover usb dependency from generic code Signed-off-by: Lorenzo Bianconi <lorenzo.bianconi@redhat.com> Signed-off-by: Felix Fietkau <nbd@nbd.name>
Diffstat (limited to 'drivers/net/wireless/mediatek/mt76/mt76x0/usb.c')
-rw-r--r--drivers/net/wireless/mediatek/mt76/mt76x0/usb.c17
1 files changed, 16 insertions, 1 deletions
diff --git a/drivers/net/wireless/mediatek/mt76/mt76x0/usb.c b/drivers/net/wireless/mediatek/mt76/mt76x0/usb.c
index 0cd46a48c5bd..a76043213f55 100644
--- a/drivers/net/wireless/mediatek/mt76/mt76x0/usb.c
+++ b/drivers/net/wireless/mediatek/mt76/mt76x0/usb.c
@@ -159,6 +159,21 @@ static const struct ieee80211_ops mt76x0u_ops = {
.wake_tx_queue = mt76_wake_tx_queue,
};
+static int mt76x0u_tx_prepare_skb(struct mt76_dev *mdev, void *data,
+ struct sk_buff *skb, struct mt76_queue *q,
+ struct mt76_wcid *wcid, struct ieee80211_sta *sta,
+ u32 *tx_info)
+{
+ struct mt76x0_dev *dev = container_of(mdev, struct mt76x0_dev, mt76);
+ struct mt76x02_txwi *txwi;
+ int len = skb->len;
+
+ mt76x02_insert_hdr_pad(skb);
+ txwi = mt76x0_push_txwi(dev, skb, sta, wcid, len);
+
+ return mt76x02u_set_txinfo(skb, wcid, q2ep(q->hw_idx));
+}
+
static int mt76x0u_register_device(struct mt76x0_dev *dev)
{
struct ieee80211_hw *hw = dev->mt76.hw;
@@ -215,7 +230,7 @@ static int mt76x0u_probe(struct usb_interface *usb_intf,
const struct usb_device_id *id)
{
static const struct mt76_driver_ops drv_ops = {
- .tx_prepare_skb = mt76x0_tx_prepare_skb,
+ .tx_prepare_skb = mt76x0u_tx_prepare_skb,
.tx_complete_skb = mt76x02_tx_complete_skb,
.tx_status_data = mt76x02_tx_status_data,
.rx_skb = mt76x0_queue_rx_skb,