Home
last modified time | relevance | path

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

123456

/openbmc/linux/drivers/net/wireless/mediatek/mt76/
H A Dmt76x02_mmio.c16 struct mt76x02_dev *dev = from_tasklet(dev, t, mt76.pre_tbtt_tasklet); in mt76x02_pre_tbtt_tasklet()
17 struct mt76_dev *mdev = &dev->mt76; in mt76x02_pre_tbtt_tasklet()
71 tasklet_enable(&dev->mt76.pre_tbtt_tasklet); in mt76x02e_pre_tbtt_enable()
73 tasklet_disable(&dev->mt76.pre_tbtt_tasklet); in mt76x02e_pre_tbtt_enable()
136 dev = container_of(w, struct mt76x02_dev, mt76.tx_worker); in mt76x02_tx_worker()
147 mt76.tx_napi); in mt76x02_poll_tx()
152 mt76_queue_tx_cleanup(dev, dev->mt76.q_mcu[MT_MCUQ_WM], false); in mt76x02_poll_tx()
159 mt76_queue_tx_cleanup(dev, dev->mt76.q_mcu[MT_MCUQ_WM], false); in mt76x02_poll_tx()
163 mt76_worker_schedule(&dev->mt76.tx_worker); in mt76x02_poll_tx()
178 status_fifo = devm_kzalloc(dev->mt76.dev, fifo_size, GFP_KERNEL); in mt76x02_dma_init()
[all …]
H A Dmt792x_dma.c15 if (test_bit(MT76_REMOVED, &dev->mt76.phy.state)) in mt792x_irq_handler()
22 tasklet_schedule(&dev->mt76.irq_tasklet); in mt792x_irq_handler()
37 intr &= dev->mt76.mmio.irqmask; in mt792x_irq_tasklet()
40 trace_dev_irq(&dev->mt76, intr, dev->mt76.mmio.irqmask); in mt792x_irq_tasklet()
60 mt76_set_irq_mask(&dev->mt76, irq_map->host_irq_enable, mask, 0); in mt792x_irq_tasklet()
63 napi_schedule(&dev->mt76.tx_napi); in mt792x_irq_tasklet()
66 napi_schedule(&dev->mt76.napi[MT_RXQ_MCU]); in mt792x_irq_tasklet()
69 napi_schedule(&dev->mt76.napi[MT_RXQ_MCU_WA]); in mt792x_irq_tasklet()
72 napi_schedule(&dev->mt76.napi[MT_RXQ_MAIN]); in mt792x_irq_tasklet()
78 struct mt792x_dev *dev = container_of(mdev, struct mt792x_dev, mt76); in mt792x_rx_poll_complete()
[all …]
/openbmc/linux/drivers/net/wireless/mediatek/mt76/mt7921/
H A Dsdio_mac.c35 struct mt76_sdio *sdio = &dev->mt76.sdio; in mt7921s_wfsys_reset()
58 readx_poll_timeout(mt7921s_read_whcr, &dev->mt76, status, in mt7921s_wfsys_reset()
78 wake_up(&dev->mt76.mcu.wait); in mt7921s_init_reset()
79 skb_queue_purge(&dev->mt76.mcu.res_q); in mt7921s_init_reset()
80 wait_event_timeout(dev->mt76.sdio.wait, in mt7921s_init_reset()
81 mt76s_txqs_empty(&dev->mt76), 5 * HZ); in mt7921s_init_reset()
82 mt76_worker_disable(&dev->mt76.sdio.txrx_worker); in mt7921s_init_reset()
84 mt7921s_disable_irq(&dev->mt76); in mt7921s_init_reset()
87 mt76_worker_enable(&dev->mt76.sdio.txrx_worker); in mt7921s_init_reset()
89 mt7921s_enable_irq(&dev->mt76); in mt7921s_init_reset()
[all …]
H A Dmain.c17 int nss = hweight8(phy->mt76->chainmask); in mt7921_init_he_caps()
130 if (is_mt7922(phy->mt76->dev)) { in mt7921_init_he_caps()
142 if (is_mt7922(phy->mt76->dev)) { in mt7921_init_he_caps()
159 &phy->mt76->sband_5g.sband; in mt7921_init_he_caps()
194 if (phy->mt76->cap.has_2ghz) { in mt7921_set_stream_he_caps()
198 band = &phy->mt76->sband_2g.sband; in mt7921_set_stream_he_caps()
203 if (phy->mt76->cap.has_5ghz) { in mt7921_set_stream_he_caps()
207 band = &phy->mt76->sband_5g.sband; in mt7921_set_stream_he_caps()
211 if (phy->mt76->cap.has_6ghz) { in mt7921_set_stream_he_caps()
215 band = &phy->mt76->sband_6g.sband; in mt7921_set_stream_he_caps()
[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 Dpci.c44 mt76_unregister_device(&dev->mt76); in mt7921e_unregister_device()
45 mt76_for_each_q_rx(&dev->mt76, i) in mt7921e_unregister_device()
46 napi_disable(&dev->mt76.napi[i]); in mt7921e_unregister_device()
51 mt76_connac2_tx_token_put(&dev->mt76); in mt7921e_unregister_device()
55 skb_queue_purge(&dev->mt76.mcu.res_q); in mt7921e_unregister_device()
57 tasklet_disable(&dev->mt76.irq_tasklet); in mt7921e_unregister_device()
131 dev_err(dev->mt76.dev, "Access currently unsupported address %08x\n", in __mt7921_reg_addr()
139 struct mt792x_dev *dev = container_of(mdev, struct mt792x_dev, mt76); in mt7921_rr()
147 struct mt792x_dev *dev = container_of(mdev, struct mt792x_dev, mt76); in mt7921_wr()
155 struct mt792x_dev *dev = container_of(mdev, struct mt792x_dev, mt76); in mt7921_rmw()
[all …]
H A Dusb.c34 struct mt792x_dev *dev = container_of(mdev, struct mt792x_dev, mt76); in mt7921u_mcu_send_message()
53 ret = mt76u_bulk_msg(&dev->mt76, skb->data, skb->len, NULL, in mt7921u_mcu_send_message()
71 dev->mt76.mcu_ops = &mcu_ops; in mt7921u_mcu_init()
89 mt76_worker_disable(&dev->mt76.tx_worker); in mt7921u_mac_reset()
94 wake_up(&dev->mt76.mcu.wait); in mt7921u_mac_reset()
95 skb_queue_purge(&dev->mt76.mcu.res_q); in mt7921u_mac_reset()
97 mt76u_stop_rx(&dev->mt76); in mt7921u_mac_reset()
98 mt76u_stop_tx(&dev->mt76); in mt7921u_mac_reset()
103 err = mt76u_resume_rx(&dev->mt76); in mt7921u_mac_reset()
136 mt76_worker_enable(&dev->mt76.tx_worker); in mt7921u_mac_reset()
[all …]
/openbmc/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 Ddma.c13 if (mtk_wed_device_active(&phy->dev->mt76.mmio.wed)) { in mt7915_init_tx_queues()
14 if (is_mt798x(&dev->mt76)) in mt7915_init_tx_queues()
22 return mt76_connac_init_tx_queues(phy->mt76, idx, n_desc, ring_base, in mt7915_init_tx_queues()
30 dev = container_of(napi, struct mt7915_dev, mt76.tx_napi); in mt7915_poll_tx()
32 mt76_connac_tx_cleanup(&dev->mt76); in mt7915_poll_tx()
52 if (is_mt7915(&dev->mt76)) { in mt7915_dma_config()
85 if (is_mt7916(&dev->mt76) && mtk_wed_device_active(&dev->mt76.mmio.wed)) { in mt7915_dma_config()
137 if (!is_mt7915(&dev->mt76)) { in __mt7915_dma_prefetch()
152 if (is_mt7915(&dev->mt76)) { in __mt7915_dma_prefetch()
172 struct mt76_dev *mdev = &dev->mt76; in mt7915_dma_disable()
[all …]
H A Deeprom.c15 struct mt76_dev *mdev = &dev->mt76; in mt7915_eeprom_load_precal()
31 offs = is_mt7915(&dev->mt76) ? MT_EE_PRECAL : MT_EE_PRECAL_V2; in mt7915_eeprom_load_precal()
38 u8 *eeprom = dev->mt76.eeprom.data; in mt7915_check_eeprom()
44 return CHECK_EEPROM_ERR(is_mt7915(&dev->mt76)); in mt7915_check_eeprom()
46 return CHECK_EEPROM_ERR(is_mt7916(&dev->mt76)); in mt7915_check_eeprom()
48 return CHECK_EEPROM_ERR(is_mt7981(&dev->mt76)); in mt7915_check_eeprom()
50 return CHECK_EEPROM_ERR(is_mt7986(&dev->mt76)); in mt7915_check_eeprom()
58 switch (mt76_chip(&dev->mt76)) { in mt7915_eeprom_name()
89 u8 *eeprom = dev->mt76.eeprom.data; in mt7915_eeprom_load_default()
93 ret = request_firmware(&fw, mt7915_eeprom_name(dev), dev->mt76.dev); in mt7915_eeprom_load_default()
[all …]
H A Dinit.c84 mutex_lock(&phy->dev->mt76.mutex); in mt7915_thermal_temp_store()
91 dev_err(phy->dev->mt76.dev, in mt7915_thermal_temp_store()
93 mutex_unlock(&phy->dev->mt76.mutex); in mt7915_thermal_temp_store()
98 mutex_unlock(&phy->dev->mt76.mutex); in mt7915_thermal_temp_store()
150 dev_err(phy->dev->mt76.dev, in mt7915_thermal_set_cur_throttle_state()
179 struct wiphy *wiphy = phy->mt76->hw->wiphy; in mt7915_unregister_thermal()
190 struct wiphy *wiphy = phy->mt76->hw->wiphy; in mt7915_thermal_init()
232 dev = container_of(mphy->dev, struct mt7915_dev, mt76); in mt7915_led_set_config()
324 memcpy(dev->mt76.alpha2, request->alpha2, sizeof(dev->mt76.alpha2)); in mt7915_regd_notifier()
325 dev->mt76.region = request->dfs_region; in mt7915_regd_notifier()
[all …]
H A Dmac.c59 if (idx >= ARRAY_SIZE(dev->mt76.wcid)) in mt7915_rx_get_wcid()
62 wcid = rcu_dereference(dev->mt76.wcid[idx]); in mt7915_rx_get_wcid()
108 spin_lock_bh(&dev->mt76.sta_poll_lock); in mt7915_mac_sta_poll()
109 list_splice_init(&dev->mt76.sta_poll_list, &sta_poll_list); in mt7915_mac_sta_poll()
110 spin_unlock_bh(&dev->mt76.sta_poll_lock); in mt7915_mac_sta_poll()
121 spin_lock_bh(&dev->mt76.sta_poll_lock); in mt7915_mac_sta_poll()
123 spin_unlock_bh(&dev->mt76.sta_poll_lock); in mt7915_mac_sta_poll()
129 spin_unlock_bh(&dev->mt76.sta_poll_lock); in mt7915_mac_sta_poll()
223 mt76_rx_signal(msta->vif->phy->mt76->antenna_mask, rssi); in mt7915_mac_sta_poll()
266 mtk_wed_device_ppe_check(&dev->mt76.mmio.wed, skb, in mt7915_wed_check_ppe()
[all …]
H A Dmcu.c12 switch (mt76_chip(&(_dev)->mt76)) { \
63 enum nl80211_band band = msta->vif->phy->mt76->chandef.chan->band; in mt7915_mcu_set_sta_he_mcs()
104 if (is_mt7915(&dev->mt76) && nss > 1 && in mt7915_mcu_set_sta_he_mcs()
140 if (is_mt7915(&dev->mt76) && nss > 1 && in mt7915_mcu_set_sta_vht_mcs()
192 struct mt7915_dev *dev = container_of(mdev, struct mt7915_dev, mt76); in mt7915_mcu_send_message()
222 return mt76_mcu_send_msg(&dev->mt76, cmd, &req, sizeof(req), false); in mt7915_mcu_wa_cmd()
235 struct mt76_phy *mphy = &dev->mt76.phy; in mt7915_mcu_rx_csa_notify()
243 if ((c->band_idx && !dev->phy.mt76->band_idx) && in mt7915_mcu_rx_csa_notify()
244 dev->mt76.phys[MT_BAND1]) in mt7915_mcu_rx_csa_notify()
245 mphy = dev->mt76.phys[MT_BAND1]; in mt7915_mcu_rx_csa_notify()
[all …]
H A Dmmio.c420 if (is_mt798x(&dev->mt76)) in mt7915_reg_map_l1()
423 l1_remap = is_mt7915(&dev->mt76) ? in mt7915_reg_map_l1()
426 dev->bus_ops->rmw(&dev->mt76, l1_remap, in mt7915_reg_map_l1()
430 dev->bus_ops->rr(&dev->mt76, l1_remap); in mt7915_reg_map_l1()
439 if (is_mt7915(&dev->mt76)) { in mt7915_reg_map_l2()
443 dev->bus_ops->rmw(&dev->mt76, MT_HIF_REMAP_L2, in mt7915_reg_map_l2()
448 dev->bus_ops->rr(&dev->mt76, MT_HIF_REMAP_L2); in mt7915_reg_map_l2()
450 u32 ofs = is_mt798x(&dev->mt76) ? 0x400000 : 0; in mt7915_reg_map_l2()
455 dev->bus_ops->rmw(&dev->mt76, MT_HIF_REMAP_L2_MT7916 + ofs, in mt7915_reg_map_l2()
460 dev->bus_ops->rr(&dev->mt76, MT_HIF_REMAP_L2_MT7916 + ofs); in mt7915_reg_map_l2()
[all …]
/openbmc/linux/drivers/net/wireless/mediatek/mt76/mt7996/
H A Dmain.c18 if (phy && test_bit(MT76_STATE_RUNNING, &phy->mt76->state)) in mt7996_dev_running()
23 return phy && test_bit(MT76_STATE_RUNNING, &phy->mt76->state); in mt7996_dev_running()
40 mt7996_mac_enable_nf(dev, phy->mt76->band_idx); in mt7996_run()
54 set_bit(MT76_STATE_RUNNING, &phy->mt76->state); in mt7996_run()
56 ieee80211_queue_delayed_work(hw, &phy->mt76->mac_work, in mt7996_run()
73 mutex_lock(&dev->mt76.mutex); in mt7996_start()
75 mutex_unlock(&dev->mt76.mutex); in mt7996_start()
85 cancel_delayed_work_sync(&phy->mt76->mac_work); in mt7996_stop()
87 mutex_lock(&dev->mt76.mutex); in mt7996_stop()
91 clear_bit(MT76_STATE_RUNNING, &phy->mt76->state); in mt7996_stop()
[all …]
H A Dinit.c54 dev = container_of(mphy->dev, struct mt7996_dev, mt76); in mt7996_led_set_config()
136 memcpy(dev->mt76.alpha2, request->alpha2, sizeof(dev->mt76.alpha2)); in mt7996_regd_notifier()
137 dev->mt76.region = request->dfs_region; in mt7996_regd_notifier()
139 if (dev->mt76.region == NL80211_DFS_UNSET) in mt7996_regd_notifier()
142 mt7996_init_txpower(dev, &phy->mt76->sband_2g.sband); in mt7996_regd_notifier()
143 mt7996_init_txpower(dev, &phy->mt76->sband_5g.sband); in mt7996_regd_notifier()
144 mt7996_init_txpower(dev, &phy->mt76->sband_6g.sband); in mt7996_regd_notifier()
146 phy->mt76->dfs_state = MT_DFS_STATE_UNKNOWN; in mt7996_regd_notifier()
154 struct mt76_dev *mdev = &phy->dev->mt76; in mt7996_init_wiphy()
202 if (phy->mt76->cap.has_2ghz) { in mt7996_init_wiphy()
[all …]
H A Ddma.c14 dev = container_of(napi, struct mt7996_dev, mt76.tx_napi); in mt7996_poll_tx()
16 mt76_connac_tx_cleanup(&dev->mt76); in mt7996_poll_tx()
260 mt76_dma_attach(&dev->mt76); in mt7996_dma_init()
268 ret = mt76_connac_init_tx_queues(dev->phy.mt76, in mt7996_dma_init()
276 ret = mt76_init_mcu_queue(&dev->mt76, MT_MCUQ_WM, in mt7996_dma_init()
284 ret = mt76_init_mcu_queue(&dev->mt76, MT_MCUQ_WA, in mt7996_dma_init()
292 ret = mt76_init_mcu_queue(&dev->mt76, MT_MCUQ_FWDL, in mt7996_dma_init()
300 ret = mt76_queue_alloc(dev, &dev->mt76.q_rx[MT_RXQ_MCU], in mt7996_dma_init()
309 ret = mt76_queue_alloc(dev, &dev->mt76.q_rx[MT_RXQ_MCU_WA], in mt7996_dma_init()
318 ret = mt76_queue_alloc(dev, &dev->mt76.q_rx[MT_RXQ_MAIN], in mt7996_dma_init()
[all …]
H A Dmac.c61 if (idx >= ARRAY_SIZE(dev->mt76.wcid)) in mt7996_rx_get_wcid()
64 wcid = rcu_dereference(dev->mt76.wcid[idx]); in mt7996_rx_get_wcid()
110 spin_lock_bh(&dev->mt76.sta_poll_lock); in mt7996_mac_sta_poll()
111 list_splice_init(&dev->mt76.sta_poll_list, &sta_poll_list); in mt7996_mac_sta_poll()
112 spin_unlock_bh(&dev->mt76.sta_poll_lock); in mt7996_mac_sta_poll()
123 spin_lock_bh(&dev->mt76.sta_poll_lock); in mt7996_mac_sta_poll()
125 spin_unlock_bh(&dev->mt76.sta_poll_lock); in mt7996_mac_sta_poll()
131 spin_unlock_bh(&dev->mt76.sta_poll_lock); in mt7996_mac_sta_poll()
230 mt76_rx_signal(msta->vif->phy->mt76->antenna_mask, rssi); in mt7996_mac_sta_poll()
371 i = mt76_get_rate(&dev->mt76, sband, i, cck); in mt7996_mac_fill_rx_rate()
[all …]
/openbmc/linux/drivers/net/wireless/mediatek/mt76/mt7615/
H A Dmcu.c73 dev->mt76.mcu.timeout = 20 * HZ; in mt7615_mcu_fill_msg()
75 seq = ++dev->mt76.mcu.msg_seq & 0xf; in mt7615_mcu_fill_msg()
77 seq = ++dev->mt76.mcu.msg_seq & 0xf; in mt7615_mcu_fill_msg()
187 struct mt7615_dev *dev = container_of(mdev, struct mt7615_dev, mt76); in mt7615_mcu_send_message()
196 return mt76_tx_queue_skb_raw(dev, dev->mt76.q_mcu[qid], skb, 0); in mt7615_mcu_send_message()
210 return mt76_mcu_send_msg(&dev->mt76, MCU_EXT_QUERY(RF_REG_ACCESS), in mt7615_rf_rr()
226 return mt76_mcu_send_msg(&dev->mt76, MCU_EXT_CMD(RF_REG_ACCESS), in mt7615_rf_wr()
232 if (!is_mt7622(&dev->mt76)) in mt7622_trigger_hif_int()
243 struct mt76_phy *mphy = &dev->mt76.phy; in mt7615_mcu_drv_pmctrl()
245 struct mt76_dev *mdev = &dev->mt76; in mt7615_mcu_drv_pmctrl()
[all …]
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 Deeprom.c50 if (is_mt7663(&dev->mt76)) in mt7615_efuse_init()
57 dev->mt76.otp.data = devm_kzalloc(dev->mt76.dev, len, GFP_KERNEL); in mt7615_efuse_init()
58 dev->mt76.otp.size = len; in mt7615_efuse_init()
59 if (!dev->mt76.otp.data) in mt7615_efuse_init()
62 buf = dev->mt76.otp.data; in mt7615_efuse_init()
80 ret = mt76_eeprom_init(&dev->mt76, MT7615_EEPROM_FULL_SIZE); in mt7615_eeprom_load()
104 u8 val, *eeprom = dev->mt76.eeprom.data; in mt7615_eeprom_parse_hw_band_cap()
106 if (is_mt7663(&dev->mt76)) { in mt7615_eeprom_parse_hw_band_cap()
113 if (is_mt7622(&dev->mt76)) { in mt7615_eeprom_parse_hw_band_cap()
119 if (is_mt7611(&dev->mt76)) { in mt7615_eeprom_parse_hw_band_cap()
[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()
70 dev = container_of(napi, struct mt7615_dev, mt76.tx_napi); in mt7615_poll_tx()
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()
92 dev = container_of(napi->dev, struct mt7615_dev, mt76.napi_dev); in mt7615_poll_rx()
96 queue_work(dev->mt76.wq, &dev->pm.wake_work); in mt7615_poll_rx()
[all …]
/openbmc/linux/drivers/net/wireless/mediatek/mt76/mt7603/
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 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 …]

123456