| /linux/drivers/net/wireless/mediatek/mt76/mt7996/ |
| H A D | main.c | 15 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 D | mcu.c | 15 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() 382 return mt76_mcu_send_msg(&dev->mt76, cmd, &req.args, in mt7996_mcu_wa_cmd() 389 return mt76_mcu_send_msg(&dev->mt76, MCU_WA_UNI_CMD(SDO), &req, in mt7996_mcu_wa_cmd() 405 struct mt76_phy *mphy = &dev->mt76.phy; in mt7996_mcu_rx_radar_detected() 412 mphy = dev->mt76.phys[MT_BAND2]; in mt7996_mcu_rx_radar_detected() 415 mphy = dev->mt76.phys[MT_BAND1]; in mt7996_mcu_rx_radar_detected() [all …]
|
| H A D | mac.c | 80 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 …]
|
| /linux/drivers/net/wireless/mediatek/mt76/mt76x0/ |
| H A D | usb.c | 63 dev_dbg(dev->mt76.dev, "MCU not ready\n"); in mt76x0_init_usb_dma() 77 mt76u_queues_deinit(&dev->mt76); in mt76x0u_cleanup() 87 mt76u_stop_tx(&dev->mt76); 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() 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() 157 if (!mt76x02_wait_for_mac(&dev->mt76)) in mt76x0u_init_hardware() 181 struct ieee80211_hw *hw = dev->mt76.hw; in mt76x0u_register_device() 182 struct mt76_usb *usb = &dev->mt76.usb; in mt76x0u_register_device() [all …]
|
| H A D | main.c | 13 struct mt76x02_dev *dev = container_of(mphy->dev, struct mt76x02_dev, mt76); in mt76x0_set_channel() 16 if (mt76_is_mmio(&dev->mt76)) in mt76x0_set_channel() 24 if (mt76_is_mmio(&dev->mt76)) { in mt76x0_set_channel() 41 mutex_lock(&dev->mt76.mutex); in mt76x0_set_sar_specs() 54 mutex_unlock(&dev->mt76.mutex); in mt76x0_set_sar_specs() 67 mutex_lock(&dev->mt76.mutex); in mt76x0_config() 82 dev->mt76.rxfilter |= MT_RX_FILTR_CFG_PROMISC; in mt76x0_config() 84 dev->mt76.rxfilter &= ~MT_RX_FILTR_CFG_PROMISC; in mt76x0_config() 86 mt76_wr(dev, MT_RX_FILTR_CFG, dev->mt76.rxfilter); in mt76x0_config() 89 mutex_unlock(&dev->mt76.mutex); in mt76x0_config()
|
| H A D | init.c | 41 dev_err(dev->mt76.dev, "PLL and XTAL check failed\n"); in mt76x0_set_wlan_state() 149 dev_warn(dev->mt76.dev, "Warning: MAC TX did not stop!\n"); in mt76x0_mac_stop() 167 dev_warn(dev->mt76.dev, "Warning: MAC RX did not stop!\n"); in mt76x0_mac_stop() 175 if (!mt76x02_wait_for_wpdma(&dev->mt76, 1000)) in mt76x0_init_hardware() 179 if (!mt76x02_wait_for_mac(&dev->mt76)) in mt76x0_init_hardware() 189 if (!mt76x02_wait_for_txrx_idle(&dev->mt76)) in mt76x0_init_hardware() 196 dev->mt76.rxfilter = mt76_rr(dev, MT_RX_FILTR_CFG); in mt76x0_init_hardware() 246 ret = mt76_register_device(&dev->mt76, true, mt76x02_rates, in mt76x0_register_device()
|
| H A D | mt76x0.h | 33 if (!mt76_is_mmio(&dev->mt76)) in is_mt7610e() 36 return mt76_chip(&dev->mt76) == 0x7610; in is_mt7610e() 41 return mt76_chip(&dev->mt76) == 0x7630; in is_mt7630()
|
| /linux/drivers/net/wireless/mediatek/mt76/mt7615/ |
| H A D | mac.c | 117 memset(phy->mt76->aggr_stats, 0, sizeof(phy->mt76->aggr_stats)); in mt7615_mac_reset_counters() 118 phy->mt76->survey_time = ktime_get_boottime(); in mt7615_mac_reset_counters() 145 bool is_5ghz = phy->mt76->chandef.chan->band == NL80211_BAND_5GHZ; in mt7615_mac_set_timing() 147 if (!test_bit(MT76_STATE_RUNNING, &phy->mt76->state)) in mt7615_mac_set_timing() 333 struct mt76_phy *mphy = &dev->mt76.phy; in mt7615_mac_fill_rx() 356 phy2 = dev->mt76.phys[MT_BAND1] ? dev->mt76.phys[MT_BAND1]->priv : NULL; in mt7615_mac_fill_rx() 387 mt76_wcid_add_poll(&dev->mt76, &msta->wcid); in mt7615_mac_fill_rx() 390 if (mt76_is_mmio(&dev->mt76) && (rxd0 & csum_mask) == csum_mask && in mt7615_mac_fill_rx() 491 int first_chain = ffs(phy2->mt76->chainmask) - 1; in mt7615_mac_fill_rx() 498 mphy = dev->mt76.phys[MT_BAND1]; in mt7615_mac_fill_rx() [all …]
|
| /linux/drivers/net/wireless/mediatek/mt76/mt7925/ |
| H A D | mac.c | 39 spin_lock_bh(&dev->mt76.sta_poll_lock); in mt7925_mac_sta_poll() 40 list_splice_init(&dev->mt76.sta_poll_list, &sta_poll_list); in mt7925_mac_sta_poll() 41 spin_unlock_bh(&dev->mt76.sta_poll_lock); in mt7925_mac_sta_poll() 54 spin_lock_bh(&dev->mt76.sta_poll_lock); in mt7925_mac_sta_poll() 56 spin_unlock_bh(&dev->mt76.sta_poll_lock); in mt7925_mac_sta_poll() 151 mt76_rx_signal(msta->vif->phy->mt76->antenna_mask, rssi); in mt7925_mac_sta_poll() 277 i = mt76_get_rate(&dev->mt76, sband, i, cck); in mt7925_mac_fill_rx_rate() 362 struct mt76_phy *mphy = &dev->mt76.phy; in mt7925_mac_fill_rx() 399 mt76_wcid_add_poll(&dev->mt76, &mlink->wcid); in mt7925_mac_fill_rx() 419 if (mt76_is_mmio(&dev->mt76) && (rxd3 & csum_mask) == csum_mask && in mt7925_mac_fill_rx() [all …]
|
| /linux/drivers/net/wireless/mediatek/ |
| H A D | Makefile | 3 obj-$(CONFIG_MT76_CORE) += mt76/
|
| H A D | Kconfig | 15 source "drivers/net/wireless/mediatek/mt76/Kconfig"
|
| /linux/drivers/net/wireless/mediatek/mt76/ |
| H A D | scan.c | 5 #include "mt76.h"
|
| H A D | agg-rx.c | 5 #include "mt76.h"
|
| /linux/drivers/net/wireless/mediatek/mt7601u/ |
| H A D | mt7601u.h | 296 /* Compatibility with mt76 */
|
| H A D | main.c | 52 /* Note: for AP do the AP-STA things mt76 does: in mt7601u_add_interface()
|
| /linux/drivers/net/ethernet/mediatek/ |
| H A D | mtk_wed.c | 2143 continue; /* queue is not configured by mt76 */ in mtk_wed_dma_enable()
|
| /linux/ |
| H A D | MAINTAINERS | 16283 MEDIATEK MT76 WIRELESS LAN DRIVER 16292 F: Documentation/devicetree/bindings/net/wireless/mediatek,mt76.yaml 16293 F: drivers/net/wireless/mediatek/mt76/ 18362 X: drivers/net/wireless/mediatek/mt76/
|