Lines Matching +full:tp +full:- +full:link
1 // SPDX-License-Identifier: GPL-2.0-only
20 { USB_DEVICE(0x148f, 0x761a) }, /* TP-Link TL-WDN5200 */
21 { USB_DEVICE(0x148f, 0x760a) }, /* TP-Link unknown */
22 { USB_DEVICE(0x0b05, 0x17d1) }, /* Asus USB-AC51 */
23 { USB_DEVICE(0x0b05, 0x17db) }, /* Asus USB-AC50 */
24 { USB_DEVICE(0x0df6, 0x0075) }, /* Sitecom WLA-3100 */
25 { USB_DEVICE(0x2019, 0xab31) }, /* Planex GW-450D */
26 { USB_DEVICE(0x2001, 0x3d02) }, /* D-LINK DWA-171 rev B1 */
29 { USB_DEVICE(0x04bb, 0x0951) }, /* I-O DATA WN-AC433UK */
32 { USB_DEVICE(0x20f4, 0x806b) }, /* TRENDnet TEW-806UBH */
35 { USB_DEVICE(0x2357, 0x0123) }, /* TP-LINK T2UHP_US_v1 */
36 { USB_DEVICE(0x2357, 0x010b) }, /* TP-LINK T2UHP_UN_v1 */
37 /* TP-LINK Archer T1U */
63 dev_dbg(dev->mt76.dev, "MCU not ready\n"); in mt76x0_init_usb_dma()
75 clear_bit(MT76_STATE_INITIALIZED, &dev->mphy.state); in mt76x0u_cleanup()
77 mt76u_queues_deinit(&dev->mt76); in mt76x0u_cleanup()
82 struct mt76x02_dev *dev = hw->priv; in mt76x0u_stop()
84 clear_bit(MT76_STATE_RUNNING, &dev->mphy.state); in mt76x0u_stop()
85 cancel_delayed_work_sync(&dev->cal_work); in mt76x0u_stop()
86 cancel_delayed_work_sync(&dev->mphy.mac_work); in mt76x0u_stop()
87 mt76u_stop_tx(&dev->mt76); in mt76x0u_stop()
90 if (test_bit(MT76_REMOVED, &dev->mphy.state)) in mt76x0u_stop()
94 dev_warn(dev->mt76.dev, "TX DMA did not stop\n"); in mt76x0u_stop()
99 dev_warn(dev->mt76.dev, "RX DMA did not stop\n"); in mt76x0u_stop()
104 struct mt76x02_dev *dev = hw->priv; in mt76x0u_start()
112 ieee80211_queue_delayed_work(dev->mt76.hw, &dev->mphy.mac_work, in mt76x0u_start()
114 ieee80211_queue_delayed_work(dev->mt76.hw, &dev->cal_work, in mt76x0u_start()
116 set_bit(MT76_STATE_RUNNING, &dev->mphy.state); in mt76x0u_start()
153 if (!mt76x02_wait_for_mac(&dev->mt76)) in mt76x0u_init_hardware()
154 return -ETIMEDOUT; in mt76x0u_init_hardware()
177 struct ieee80211_hw *hw = dev->mt76.hw; in mt76x0u_register_device()
178 struct mt76_usb *usb = &dev->mt76.usb; in mt76x0u_register_device()
181 usb->mcu.data = devm_kmalloc(dev->mt76.dev, MCU_RESP_URB_SIZE, in mt76x0u_register_device()
183 if (!usb->mcu.data) in mt76x0u_register_device()
184 return -ENOMEM; in mt76x0u_register_device()
186 err = mt76u_alloc_queues(&dev->mt76); in mt76x0u_register_device()
195 hw->max_tx_fragments = dev->mt76.usb.sg_en ? MT_TX_SG_MAX_SIZE : 1; in mt76x0u_register_device()
200 set_bit(MT76_STATE_INITIALIZED, &dev->mphy.state); in mt76x0u_register_device()
230 mdev = mt76_alloc_device(&usb_intf->dev, sizeof(*dev), &mt76x0u_ops, in mt76x0u_probe()
233 return -ENOMEM; in mt76x0u_probe()
236 mutex_init(&dev->phy_mutex); in mt76x0u_probe()
239 if (id->driver_info) in mt76x0u_probe()
240 dev->no_2ghz = true; in mt76x0u_probe()
256 ret = -ETIMEDOUT; in mt76x0u_probe()
260 mdev->rev = mt76_rr(dev, MT_ASIC_VERSION); in mt76x0u_probe()
262 dev_info(mdev->dev, "ASIC revision: %08x MAC revision: %08x\n", in mt76x0u_probe()
263 mdev->rev, mac_rev); in mt76x0u_probe()
265 ret = -ENODEV; in mt76x0u_probe()
271 dev_warn(mdev->dev, "Warning: eFUSE not present\n"); in mt76x0u_probe()
282 mt76u_queues_deinit(&dev->mt76); in mt76x0u_probe()
283 mt76_free_device(&dev->mt76); in mt76x0u_probe()
291 bool initialized = test_bit(MT76_STATE_INITIALIZED, &dev->mphy.state); in mt76x0_disconnect()
296 ieee80211_unregister_hw(dev->mt76.hw); in mt76x0_disconnect()
302 mt76_free_device(&dev->mt76); in mt76x0_disconnect()
310 mt76u_stop_rx(&dev->mt76); in mt76x0_suspend()
311 clear_bit(MT76_STATE_MCU_RUNNING, &dev->mphy.state); in mt76x0_suspend()
322 ret = mt76u_resume_rx(&dev->mt76); in mt76x0_resume()