Home
last modified time | relevance | path

Searched full:mt76 (Results 1 – 25 of 102) sorted by relevance

12345

/linux/drivers/net/wireless/mediatek/mt76/mt7915/
H A Dmain.c20 return phy && test_bit(MT76_STATE_RUNNING, &phy->mt76->state); in mt7915_dev_running()
33 ret = mt76_connac_mcu_set_pm(&dev->mt76, in mt7915_run()
34 dev->phy.mt76->band_idx, 0); in mt7915_run()
38 ret = mt7915_mcu_set_mac(dev, dev->phy.mt76->band_idx, in mt7915_run()
43 mt7915_mac_enable_nf(dev, dev->phy.mt76->band_idx); in mt7915_run()
47 ret = mt76_connac_mcu_set_pm(&dev->mt76, in mt7915_run()
48 phy->mt76->band_idx, 0); in mt7915_run()
52 ret = mt7915_mcu_set_mac(dev, phy->mt76->band_idx, in mt7915_run()
57 mt7915_mac_enable_nf(dev, phy->mt76->band_idx); in mt7915_run()
71 ret = mt76_connac_mcu_set_rts_thresh(&dev->mt76, 0x92b, in mt7915_run()
[all …]
H A Dmac.c105 spin_lock_bh(&dev->mt76.sta_poll_lock); in mt7915_mac_sta_poll()
106 list_splice_init(&dev->mt76.sta_poll_list, &sta_poll_list); in mt7915_mac_sta_poll()
107 spin_unlock_bh(&dev->mt76.sta_poll_lock); in mt7915_mac_sta_poll()
118 spin_lock_bh(&dev->mt76.sta_poll_lock); in mt7915_mac_sta_poll()
120 spin_unlock_bh(&dev->mt76.sta_poll_lock); in mt7915_mac_sta_poll()
126 spin_unlock_bh(&dev->mt76.sta_poll_lock); in mt7915_mac_sta_poll()
227 mt76_rx_signal(msta->vif->phy->mt76->antenna_mask, rssi); in mt7915_mac_sta_poll()
270 mtk_wed_device_ppe_check(&dev->mt76.mmio.wed, skb, in mt7915_wed_check_ppe()
280 struct mt76_phy *mphy = &dev->mt76.phy; in mt7915_mac_fill_rx()
304 if ((rxd1 & MT_RXD1_NORMAL_BAND_IDX) && !phy->mt76->band_idx) { in mt7915_mac_fill_rx()
[all …]
H A Dtestmode.c41 struct mt76_phy *mphy = phy->mt76; in mt7915_tm_set_tx_power()
54 .band_idx = phy->mt76->band_idx, in mt7915_tm_set_tx_power()
59 if (phy->mt76->test.state != MT76_TM_STATE_OFF) in mt7915_tm_set_tx_power()
60 tx_power = phy->mt76->test.tx_power; in mt7915_tm_set_tx_power()
66 ret = mt76_mcu_send_msg(&dev->mt76, in mt7915_tm_set_tx_power()
80 .param.freq.band = phy->mt76->band_idx, in mt7915_tm_set_freq_offset()
84 return mt76_mcu_send_msg(&dev->mt76, MCU_EXT_CMD(ATE_CTRL), &req, in mt7915_tm_set_freq_offset()
100 return mt76_mcu_send_msg(&dev->mt76, in mt7915_tm_mode_ctrl()
114 .param.trx.band = phy->mt76->band_idx, in mt7915_tm_set_trx()
117 return mt76_mcu_send_msg(&dev->mt76, MCU_EXT_CMD(ATE_CTRL), &req, in mt7915_tm_set_trx()
[all …]
/linux/drivers/net/wireless/mediatek/mt76/mt7921/
H A Dsdio_mac.c37 struct mt76_sdio *sdio = &dev->mt76.sdio; in mt7921s_wfsys_reset()
40 if (atomic_read(&dev->mt76.bus_hung)) in mt7921s_wfsys_reset()
63 readx_poll_timeout(mt7921s_read_whcr, &dev->mt76, status, in mt7921s_wfsys_reset()
83 wake_up(&dev->mt76.mcu.wait); in mt7921s_init_reset()
84 skb_queue_purge(&dev->mt76.mcu.res_q); in mt7921s_init_reset()
85 wait_event_timeout(dev->mt76.sdio.wait, in mt7921s_init_reset()
86 mt76s_txqs_empty(&dev->mt76), 5 * HZ); in mt7921s_init_reset()
87 mt76_worker_disable(&dev->mt76.sdio.txrx_worker); in mt7921s_init_reset()
89 mt7921s_disable_irq(&dev->mt76); in mt7921s_init_reset()
92 mt76_worker_enable(&dev->mt76.sdio.txrx_worker); in mt7921s_init_reset()
[all …]
H A Dpci_mac.c13 struct mt792x_dev *dev = container_of(mdev, struct mt792x_dev, mt76); in mt7921e_tx_prepare_skb()
25 wcid = &dev->mt76.global_wcid; in mt7921e_tx_prepare_skb()
68 wake_up(&dev->mt76.mcu.wait); in mt7921e_mac_reset()
69 skb_queue_purge(&dev->mt76.mcu.res_q); in mt7921e_mac_reset()
73 mt76_worker_disable(&dev->mt76.tx_worker); in mt7921e_mac_reset()
74 napi_disable(&dev->mt76.napi[MT_RXQ_MAIN]); in mt7921e_mac_reset()
75 napi_disable(&dev->mt76.napi[MT_RXQ_MCU]); in mt7921e_mac_reset()
76 napi_disable(&dev->mt76.napi[MT_RXQ_MCU_WA]); in mt7921e_mac_reset()
77 napi_disable(&dev->mt76.tx_napi); in mt7921e_mac_reset()
79 mt76_connac2_tx_token_put(&dev->mt76); in mt7921e_mac_reset()
[all …]
H A Dmain.c17 int nss = hweight8(phy->mt76->chainmask); in mt7921_init_he_caps()
87 if (is_mt7922(phy->mt76->dev)) { in mt7921_init_he_caps()
135 if (is_mt7922(phy->mt76->dev)) { in mt7921_init_he_caps()
149 if (is_mt7922(phy->mt76->dev)) { in mt7921_init_he_caps()
166 &phy->mt76->sband_5g.sband; in mt7921_init_he_caps()
201 if (phy->mt76->cap.has_2ghz) { in mt7921_set_stream_he_caps()
205 band = &phy->mt76->sband_2g.sband; in mt7921_set_stream_he_caps()
209 if (phy->mt76->cap.has_5ghz) { in mt7921_set_stream_he_caps()
213 band = &phy->mt76->sband_5g.sband; in mt7921_set_stream_he_caps()
216 if (phy->mt76->cap.has_6ghz) { in mt7921_set_stream_he_caps()
[all …]
H A Dpci.c51 mt76_unregister_device(&dev->mt76); in mt7921e_unregister_device()
52 mt76_for_each_q_rx(&dev->mt76, i) in mt7921e_unregister_device()
53 napi_disable(&dev->mt76.napi[i]); in mt7921e_unregister_device()
58 mt76_connac2_tx_token_put(&dev->mt76); in mt7921e_unregister_device()
62 skb_queue_purge(&dev->mt76.mcu.res_q); in mt7921e_unregister_device()
64 tasklet_disable(&dev->mt76.irq_tasklet); in mt7921e_unregister_device()
138 dev_err(dev->mt76.dev, "Access currently unsupported address %08x\n", in __mt7921_reg_addr()
146 struct mt792x_dev *dev = container_of(mdev, struct mt792x_dev, mt76); in mt7921_rr()
154 struct mt792x_dev *dev = container_of(mdev, struct mt792x_dev, mt76); in mt7921_wr()
162 struct mt792x_dev *dev = container_of(mdev, struct mt792x_dev, mt76); in mt7921_rmw()
[all …]
H A Dsdio_mcu.c19 struct mt792x_dev *dev = container_of(mdev, struct mt792x_dev, mt76); in mt7921s_mcu_send_message()
56 struct mt76_sdio *sdio = &dev->mt76.sdio; in mt7921s_read_rm3r()
63 struct mt76_sdio *sdio = &dev->mt76.sdio; in mt7921s_clear_rm3r_drv_own()
89 dev->mt76.mcu_ops = &mt7921s_mcu_ops; in mt7921s_mcu_init()
102 struct sdio_func *func = dev->mt76.sdio.func; in mt7921s_mcu_drv_pmctrl()
103 struct mt76_phy *mphy = &dev->mt76.phy; in mt7921s_mcu_drv_pmctrl()
112 err = readx_poll_timeout(mt76s_read_pcr, &dev->mt76, status, in mt7921s_mcu_drv_pmctrl()
123 dev_err(dev->mt76.dev, "driver own failed\n"); in mt7921s_mcu_drv_pmctrl()
138 struct sdio_func *func = dev->mt76.sdio.func; in mt7921s_mcu_fw_pmctrl()
139 struct mt76_phy *mphy = &dev->mt76.phy; in mt7921s_mcu_fw_pmctrl()
[all …]
H A Dmac.c49 spin_lock_bh(&dev->mt76.sta_poll_lock); in mt7921_mac_sta_poll()
50 list_splice_init(&dev->mt76.sta_poll_list, &sta_poll_list); in mt7921_mac_sta_poll()
51 spin_unlock_bh(&dev->mt76.sta_poll_lock); in mt7921_mac_sta_poll()
59 spin_lock_bh(&dev->mt76.sta_poll_lock); in mt7921_mac_sta_poll()
61 spin_unlock_bh(&dev->mt76.sta_poll_lock); in mt7921_mac_sta_poll()
69 spin_unlock_bh(&dev->mt76.sta_poll_lock); in mt7921_mac_sta_poll()
161 mt76_rx_signal(msta->vif->phy->mt76->antenna_mask, rssi); in mt7921_mac_sta_poll()
176 struct mt76_phy *mphy = &dev->mt76.phy; in mt7921_mac_fill_rx()
219 mt76_wcid_add_poll(&dev->mt76, &mlink->wcid); in mt7921_mac_fill_rx()
239 if (mt76_is_mmio(&dev->mt76) && (rxd0 & csum_mask) == csum_mask && in mt7921_mac_fill_rx()
[all …]
H A Ddebugfs.c12 mt76_wr(dev, dev->mt76.debugfs_reg, val); in mt7921_reg_set()
24 *val = mt76_rr(dev, dev->mt76.debugfs_reg); in mt7921_reg_get()
148 if (mt76_is_usb(&dev->mt76)) in mt7921_pm_set()
151 mutex_lock(&dev->mt76.mutex); in mt7921_pm_set()
170 mutex_unlock(&dev->mt76.mutex); in mt7921_pm_set()
195 if (mt76_is_usb(&dev->mt76)) in mt7921_deep_sleep_set()
204 mt76_connac_mcu_set_deep_sleep(&dev->mt76, pm->ds_enable); in mt7921_deep_sleep_set()
235 mt792x_reset(&dev->mt76); in mt7921_chip_reset()
240 ret = mt76_connac_mcu_chip_config(&dev->mt76); in mt7921_chip_reset()
254 struct mt76_sdio *sdio = &dev->mt76.sdio; in mt7921s_sched_quota_read()
[all …]
/linux/drivers/net/wireless/mediatek/mt76/mt7615/
H A Dmain.c24 return phy && test_bit(MT76_STATE_RUNNING, &phy->mt76->state); in mt7615_dev_running()
47 ret = mt76_connac_mcu_set_mac_enable(&dev->mt76, 0, true, false); in mt7615_start()
59 ret = mt76_connac_mcu_set_mac_enable(&dev->mt76, 1, true, false); in mt7615_start()
67 ret = mt76_connac_mcu_set_channel_domain(phy->mt76); in mt7615_start()
71 ret = mt76_connac_mcu_set_rate_txpower(phy->mt76); in mt7615_start()
80 set_bit(MT76_STATE_RUNNING, &phy->mt76->state); in mt7615_start()
83 ieee80211_queue_delayed_work(hw, &phy->mt76->mac_work, timeout); in mt7615_start()
99 cancel_delayed_work_sync(&phy->mt76->mac_work); in mt7615_stop()
110 mt76_testmode_reset(phy->mt76, true); in mt7615_stop()
112 clear_bit(MT76_STATE_RUNNING, &phy->mt76->state); in mt7615_stop()
[all …]
H A Dpci_mac.c65 struct mt7615_dev *dev = container_of(mdev, struct mt7615_dev, mt76); in mt7615_tx_prepare_skb()
76 wcid = &dev->mt76.global_wcid; in mt7615_tx_prepare_skb()
85 spin_lock_bh(&dev->mt76.lock); in mt7615_tx_prepare_skb()
88 spin_unlock_bh(&dev->mt76.lock); in mt7615_tx_prepare_skb()
104 if (is_mt7615(&dev->mt76)) in mt7615_tx_prepare_skb()
128 mt76_queue_tx_cleanup(dev, dev->mt76.q_mcu[i], true); in mt7615_dma_reset()
130 mt76_for_each_q_rx(&dev->mt76, i) in mt7615_dma_reset()
133 mt76_tx_status_check(&dev->mt76, true); in mt7615_dma_reset()
144 if (is_mt7663(&dev->mt76)) in mt7615_hif_int_event_trigger()
186 struct mt76_phy *mphy_ext = dev->mt76.phys[MT_BAND1]; in mt7615_update_beacons()
[all …]
H A Ddma.c40 return mt76_init_mcu_queue(&dev->mt76, MT_MCUQ_WM, MT7622_TXQ_MCU, in mt7622_init_tx_queues_multi()
49 ret = mt76_init_mcu_queue(&dev->mt76, MT_MCUQ_FWDL, MT7615_TXQ_FWDL, in mt7615_init_tx_queues()
54 if (!is_mt7615(&dev->mt76)) in mt7615_init_tx_queues()
62 return mt76_init_mcu_queue(&dev->mt76, MT_MCUQ_WM, MT7615_TXQ_MCU, in mt7615_init_tx_queues()
73 queue_work(dev->mt76.wq, &dev->pm.wake_work); in mt7615_poll_tx()
77 mt76_queue_tx_cleanup(dev, dev->mt76.q_mcu[MT_MCUQ_WM], false); in mt7615_poll_tx()
79 mt76_connac_irq_enable(&dev->mt76, in mt7615_poll_tx()
96 queue_work(dev->mt76.wq, &dev->pm.wake_work); in mt7615_poll_rx()
107 struct mt76_dev *mdev = &dev->mt76; in mt7615_wait_pdma_busy()
209 if (is_mt7622(&dev->mt76)) in mt7615_dma_start()
[all …]
H A Dmmio.c81 tasklet_schedule(&dev->mt76.irq_tasklet); in mt7615_irq_handler()
88 struct mt7615_dev *dev = from_tasklet(dev, t, mt76.irq_tasklet); in mt7615_irq_tasklet()
95 intr &= dev->mt76.mmio.irqmask; in mt7615_irq_tasklet()
98 trace_dev_irq(&dev->mt76, intr, dev->mt76.mmio.irqmask); in mt7615_irq_tasklet()
103 mt76_set_irq_mask(&dev->mt76, MT_INT_MASK_CSR, mask, 0); in mt7615_irq_tasklet()
106 napi_schedule(&dev->mt76.tx_napi); in mt7615_irq_tasklet()
109 napi_schedule(&dev->mt76.napi[0]); in mt7615_irq_tasklet()
112 napi_schedule(&dev->mt76.napi[1]); in mt7615_irq_tasklet()
117 if (is_mt7663(&dev->mt76)) { in mt7615_irq_tasklet()
130 queue_work(dev->mt76.wq, &dev->reset_work); in mt7615_irq_tasklet()
[all …]
/linux/drivers/net/wireless/mediatek/mt76/mt7925/
H A Dpci_mac.c13 struct mt792x_dev *dev = container_of(mdev, struct mt792x_dev, mt76); in mt7925e_tx_prepare_skb()
25 wcid = &dev->mt76.global_wcid; in mt7925e_tx_prepare_skb()
61 spin_lock_bh(&dev->mt76.token_lock); in mt7925_tx_token_put()
62 idr_for_each_entry(&dev->mt76.token, txwi, id) { in mt7925_tx_token_put()
64 dev->mt76.token_count--; in mt7925_tx_token_put()
66 spin_unlock_bh(&dev->mt76.token_lock); in mt7925_tx_token_put()
67 idr_destroy(&dev->mt76.token); in mt7925_tx_token_put()
84 wake_up(&dev->mt76.mcu.wait); in mt7925e_mac_reset()
85 skb_queue_purge(&dev->mt76.mcu.res_q); in mt7925e_mac_reset()
89 mt76_worker_disable(&dev->mt76.tx_worker); in mt7925e_mac_reset()
[all …]
H A Dmain.c22 int i, nss = hweight8(phy->mt76->antenna_mask); in mt7925_init_he_caps()
162 enum nl80211_chan_width width = phy->mt76->chandef.width; in mt7925_init_eht_caps()
163 int nss = hweight8(phy->mt76->antenna_mask); in mt7925_init_eht_caps()
164 int sts = hweight16(phy->mt76->chainmask); in mt7925_init_eht_caps()
241 struct wiphy *wiphy = phy->mt76->hw->wiphy; in mt7925_init_mlo_caps()
298 if (phy->mt76->cap.has_2ghz) in mt7925_set_stream_he_eht_caps()
299 __mt7925_set_stream_he_eht_caps(phy, &phy->mt76->sband_2g.sband, in mt7925_set_stream_he_eht_caps()
302 if (phy->mt76->cap.has_5ghz) in mt7925_set_stream_he_eht_caps()
303 __mt7925_set_stream_he_eht_caps(phy, &phy->mt76->sband_5g.sband, in mt7925_set_stream_he_eht_caps()
306 if (phy->mt76->cap.has_6ghz) in mt7925_set_stream_he_eht_caps()
[all …]
/linux/drivers/net/wireless/mediatek/mt76/mt7996/
H A Dmain.c15 mt7996_mac_enable_nf(dev, phy->mt76->band_idx); in mt7996_run()
37 set_bit(MT76_STATE_RUNNING, &phy->mt76->state); in mt7996_run()
39 ieee80211_queue_delayed_work(dev->mphy.hw, &phy->mt76->mac_work, in mt7996_run()
57 mutex_lock(&dev->mt76.mutex); in mt7996_start()
59 if (!ret && is_mt7992(&dev->mt76)) { in mt7996_start()
64 mutex_unlock(&dev->mt76.mutex); in mt7996_start()
73 if (!phy || !test_bit(MT76_STATE_RUNNING, &phy->mt76->state)) in mt7996_stop_phy()
78 cancel_delayed_work_sync(&phy->mt76->mac_work); in mt7996_stop_phy()
80 mutex_lock(&dev->mt76.mutex); in mt7996_stop_phy()
84 clear_bit(MT76_STATE_RUNNING, &phy->mt76->state); in mt7996_stop_phy()
[all …]
H A Dmac.c80 for (i = 0; i < ARRAY_SIZE(mvif->mt76.link); i++) { in mt7996_rx_get_wcid()
83 mlink = rcu_dereference(mvif->mt76.link[i]); in mt7996_rx_get_wcid()
131 spin_lock_bh(&dev->mt76.sta_poll_lock); in mt7996_mac_sta_poll()
132 list_splice_init(&dev->mt76.sta_poll_list, &sta_poll_list); in mt7996_mac_sta_poll()
133 spin_unlock_bh(&dev->mt76.sta_poll_lock); in mt7996_mac_sta_poll()
143 spin_lock_bh(&dev->mt76.sta_poll_lock); in mt7996_mac_sta_poll()
145 spin_unlock_bh(&dev->mt76.sta_poll_lock); in mt7996_mac_sta_poll()
154 spin_unlock_bh(&dev->mt76.sta_poll_lock); in mt7996_mac_sta_poll()
210 mlink = rcu_dereference(msta->vif->mt76.link[wcid->link_id]); in mt7996_mac_sta_poll()
341 i = mt76_get_rate(&dev->mt76, sband, i, cck); in mt7996_mac_fill_rx_rate()
[all …]
H A Dmcu.c15 switch (mt76_chip(&(_dev)->mt76)) { \
129 enum nl80211_band band = link->phy->mt76->chandef.chan->band; in mt7996_mcu_set_sta_he_mcs()
273 struct mt7996_dev *dev = container_of(mdev, struct mt7996_dev, mt76); in mt7996_mcu_send_message()
284 seq = ++dev->mt76.mcu.msg_seq & 0xf; in mt7996_mcu_send_message()
286 seq = ++dev->mt76.mcu.msg_seq & 0xf; in mt7996_mcu_send_message()
379 return mt76_mcu_send_msg(&dev->mt76, cmd, &req.args, in mt7996_mcu_wa_cmd()
386 return mt76_mcu_send_msg(&dev->mt76, MCU_WA_UNI_CMD(SDO), &req, in mt7996_mcu_wa_cmd()
402 struct mt76_phy *mphy = &dev->mt76.phy; in mt7996_mcu_rx_radar_detected()
409 mphy = dev->mt76.phys[MT_BAND2]; in mt7996_mcu_rx_radar_detected()
412 mphy = dev->mt76.phys[MT_BAND1]; in mt7996_mcu_rx_radar_detected()
[all …]
/linux/drivers/net/wireless/mediatek/mt76/mt7603/
H A Dmcu.c20 struct mt7603_dev *dev = container_of(mdev, struct mt7603_dev, mt76); in mt7603_mcu_parse_response()
41 struct mt7603_dev *dev = container_of(mdev, struct mt7603_dev, mt76); in mt7603_mcu_skb_send_msg()
91 return mt76_mcu_send_msg(&dev->mt76, -MCU_CMD_TARGET_ADDRESS_LEN_REQ, in mt7603_mcu_init_download()
106 return mt76_mcu_send_msg(&dev->mt76, -MCU_CMD_FW_START_REQ, &req, in mt7603_mcu_start_firmware()
137 ret = request_firmware(&fw, firmware, dev->mt76.dev); in mt7603_load_firmware()
142 dev_err(dev->mt76.dev, "Invalid firmware\n"); in mt7603_load_firmware()
150 dev_info(dev->mt76.dev, "Firmware Version: %.10s\n", hdr->fw_ver); in mt7603_load_firmware()
151 dev_info(dev->mt76.dev, "Build Time: %.15s\n", hdr->build_date); in mt7603_load_firmware()
164 dev_info(dev->mt76.dev, "Firmware already running...\n"); in mt7603_load_firmware()
169 dev_err(dev->mt76.dev, "Timeout waiting for ROM code to become ready\n"); in mt7603_load_firmware()
[all …]
H A Dmain.c45 mutex_lock(&dev->mt76.mutex); in mt7603_add_interface()
47 mvif->idx = __ffs64(~dev->mt76.vif_mask); in mt7603_add_interface()
68 dev->mt76.vif_mask |= BIT_ULL(mvif->idx); in mt7603_add_interface()
78 rcu_assign_pointer(dev->mt76.wcid[idx], &mvif->sta.wcid); in mt7603_add_interface()
81 mutex_unlock(&dev->mt76.mutex); in mt7603_add_interface()
100 rcu_assign_pointer(dev->mt76.wcid[idx], NULL); in mt7603_remove_interface()
102 spin_lock_bh(&dev->mt76.sta_poll_lock); in mt7603_remove_interface()
105 spin_unlock_bh(&dev->mt76.sta_poll_lock); in mt7603_remove_interface()
107 mutex_lock(&dev->mt76.mutex); in mt7603_remove_interface()
108 dev->mt76.vif_mask &= ~BIT_ULL(mvif->idx); in mt7603_remove_interface()
[all …]
H A Dcore.c8 struct mt7603_dev *dev = container_of(mdev, struct mt7603_dev, mt76); in mt7603_rx_poll_complete()
24 trace_dev_irq(&dev->mt76, intr, dev->mt76.mmio.irqmask); in mt7603_irq_handler()
26 intr &= dev->mt76.mmio.irqmask; in mt7603_irq_handler()
33 tasklet_schedule(&dev->mt76.pre_tbtt_tasklet); in mt7603_irq_handler()
35 if ((hwintr & MT_HW_INT3_TBTT0) && dev->mt76.csa_complete) in mt7603_irq_handler()
36 mt76_csa_finish(&dev->mt76); in mt7603_irq_handler()
41 napi_schedule(&dev->mt76.tx_napi); in mt7603_irq_handler()
47 napi_schedule(&dev->mt76.napi[0]); in mt7603_irq_handler()
53 napi_schedule(&dev->mt76.napi[1]); in mt7603_irq_handler()
64 dev->bus_ops->wr(&dev->mt76, MT_MCU_PCIE_REMAP_2, base); in mt7603_reg_map()
H A Ddma.c98 struct mt7603_dev *dev = container_of(mdev, struct mt7603_dev, mt76); in mt7603_queue_rx_skb()
107 mt76_mcu_rx_event(&dev->mt76, skb); in mt7603_queue_rx_skb()
120 mt76_mcu_rx_event(&dev->mt76, skb); in mt7603_queue_rx_skb()
124 mt76_rx(&dev->mt76, q, skb); in mt7603_queue_rx_skb()
155 dev = container_of(napi, struct mt7603_dev, mt76.tx_napi); in mt7603_poll_tx()
158 mt76_queue_tx_cleanup(dev, dev->mt76.q_mcu[MT_MCUQ_WM], false); in mt7603_poll_tx()
165 mt76_queue_tx_cleanup(dev, dev->mt76.q_mcu[MT_MCUQ_WM], false); in mt7603_poll_tx()
171 mt76_worker_schedule(&dev->mt76.tx_worker); in mt7603_poll_tx()
181 mt76_dma_attach(&dev->mt76); in mt7603_dma_init()
205 ret = mt76_init_mcu_queue(&dev->mt76, MT_MCUQ_WM, MT_TX_HW_QUEUE_MCU, in mt7603_dma_init()
[all …]
/linux/drivers/net/wireless/mediatek/mt76/
H A Dmt792x_usb.c78 ret = mt76u_vendor_request(&dev->mt76, MT_VEND_POWER_ON, in mt792xu_mcu_power_on()
86 dev_err(dev->mt76.dev, "Timeout for power on\n"); in mt792xu_mcu_power_on()
98 skb_queue_purge(&dev->mt76.mcu.res_q); in mt792xu_cleanup()
99 mt76u_queues_deinit(&dev->mt76); in mt792xu_cleanup()
201 val = mt792xu_uhw_rr(&dev->mt76, MT_SSUSB_EPCTL_CSR_EP_RST_OPT); in mt792xu_epctl_rst_opt()
206 mt792xu_uhw_wr(&dev->mt76, MT_SSUSB_EPCTL_CSR_EP_RST_OPT, val); in mt792xu_epctl_rst_opt()
244 val = mt792xu_uhw_rr(&dev->mt76, MT_CBTOP_RGU_WF_SUBSYS_RST); in mt792xu_wfsys_reset()
246 mt792xu_uhw_wr(&dev->mt76, MT_CBTOP_RGU_WF_SUBSYS_RST, val); in mt792xu_wfsys_reset()
250 val = mt792xu_uhw_rr(&dev->mt76, MT_CBTOP_RGU_WF_SUBSYS_RST); in mt792xu_wfsys_reset()
252 mt792xu_uhw_wr(&dev->mt76, MT_CBTOP_RGU_WF_SUBSYS_RST, val); in mt792xu_wfsys_reset()
[all …]
/linux/drivers/net/wireless/mediatek/mt76/mt76x2/
H A Dpci_mcu.c25 dev_err(dev->mt76.dev, in mt76pci_load_rom_patch()
39 dev_info(dev->mt76.dev, "ROM patch already applied\n"); in mt76pci_load_rom_patch()
43 ret = request_firmware(&fw, MT7662_ROM_PATCH, dev->mt76.dev); in mt76pci_load_rom_patch()
49 dev_err(dev->mt76.dev, "Failed to load firmware\n"); in mt76pci_load_rom_patch()
54 dev_info(dev->mt76.dev, "ROM patch build: %.15s\n", hdr->build_time); in mt76pci_load_rom_patch()
68 dev_err(dev->mt76.dev, "Failed to load ROM patch\n"); in mt76pci_load_rom_patch()
89 ret = request_firmware(&fw, MT7662_FIRMWARE, dev->mt76.dev); in mt76pci_load_firmware()
106 dev_info(dev->mt76.dev, "Firmware Version: %d.%d.%02d\n", in mt76pci_load_firmware()
110 dev_info(dev->mt76.dev, "Build: %x\n", val); in mt76pci_load_firmware()
111 dev_info(dev->mt76.dev, "Build Time: %.16s\n", hdr->build_time); in mt76pci_load_firmware()
[all …]

12345