/Linux-v6.1/drivers/net/wireless/mediatek/mt76/ |
D | mt76x02_mmio.c | 16 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 …]
|
D | Makefile | 2 obj-$(CONFIG_MT76_CORE) += mt76.o 3 obj-$(CONFIG_MT76_USB) += mt76-usb.o 4 obj-$(CONFIG_MT76_SDIO) += mt76-sdio.o 7 obj-$(CONFIG_MT76_CONNAC_LIB) += mt76-connac-lib.o 9 mt76-y := \ 13 mt76-$(CONFIG_PCI) += pci.o 14 mt76-$(CONFIG_NL80211_TESTMODE) += testmode.o 16 mt76-usb-y := usb.o usb_trace.o 17 mt76-sdio-y := sdio.o sdio_txrx.o 30 mt76-connac-lib-y := mt76_connac_mcu.o mt76_connac_mac.o
|
/Linux-v6.1/drivers/net/wireless/mediatek/mt76/mt7921/ |
D | sdio_mac.c | 35 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 …]
|
D | pci_mac.c | 13 struct mt7921_dev *dev = container_of(mdev, struct mt7921_dev, mt76); in mt7921e_tx_prepare_skb() 25 wcid = &dev->mt76.global_wcid; in mt7921e_tx_prepare_skb() 61 spin_lock_bh(&dev->mt76.token_lock); in mt7921_tx_token_put() 62 idr_for_each_entry(&dev->mt76.token, txwi, id) { in mt7921_tx_token_put() 64 dev->mt76.token_count--; in mt7921_tx_token_put() 66 spin_unlock_bh(&dev->mt76.token_lock); in mt7921_tx_token_put() 67 idr_destroy(&dev->mt76.token); in mt7921_tx_token_put() 83 wake_up(&dev->mt76.mcu.wait); in mt7921e_mac_reset() 84 skb_queue_purge(&dev->mt76.mcu.res_q); in mt7921e_mac_reset() 88 mt76_worker_disable(&dev->mt76.tx_worker); in mt7921e_mac_reset() [all …]
|
D | dma.c | 12 dev = container_of(napi, struct mt7921_dev, mt76.tx_napi); in mt7921_poll_tx() 16 queue_work(dev->mt76.wq, &dev->pm.wake_work); in mt7921_poll_tx() 20 mt76_connac_tx_cleanup(&dev->mt76); in mt7921_poll_tx() 33 dev = container_of(napi->dev, struct mt7921_dev, mt76.napi_dev); in mt7921_poll_rx() 37 queue_work(dev->mt76.wq, &dev->pm.wake_work); in mt7921_poll_rx() 147 mt76_queue_reset(dev, dev->mt76.q_mcu[i]); in mt7921_dma_reset() 149 mt76_for_each_q_rx(&dev->mt76, i) in mt7921_dma_reset() 150 mt76_queue_reset(dev, &dev->mt76.q_rx[i]); in mt7921_dma_reset() 152 mt76_tx_status_check(&dev->mt76, true); in mt7921_dma_reset() 163 if (!__mt76_poll_msec(&dev->mt76, MT_WFSYS_SW_RST_B, in mt7921_wfsys_reset() [all …]
|
D | pci.c | 30 struct mt7921_dev *dev = container_of(mdev, struct mt7921_dev, mt76); in mt7921_rx_poll_complete() 62 intr &= dev->mt76.mmio.irqmask; in mt7921_irq_tasklet() 65 trace_dev_irq(&dev->mt76, intr, dev->mt76.mmio.irqmask); in mt7921_irq_tasklet() 83 mt76_set_irq_mask(&dev->mt76, MT_WFDMA0_HOST_INT_ENA, mask, 0); in mt7921_irq_tasklet() 86 napi_schedule(&dev->mt76.tx_napi); in mt7921_irq_tasklet() 89 napi_schedule(&dev->mt76.napi[MT_RXQ_MCU]); in mt7921_irq_tasklet() 92 napi_schedule(&dev->mt76.napi[MT_RXQ_MCU_WA]); in mt7921_irq_tasklet() 95 napi_schedule(&dev->mt76.napi[MT_RXQ_MAIN]); in mt7921_irq_tasklet() 109 mt76_unregister_device(&dev->mt76); in mt7921e_unregister_device() 110 mt76_for_each_q_rx(&dev->mt76, i) in mt7921e_unregister_device() [all …]
|
D | usb_mac.c | 116 val = mt7921u_uhw_rr(&dev->mt76, MT_SSUSB_EPCTL_CSR_EP_RST_OPT); in mt7921u_epctl_rst_opt() 121 mt7921u_uhw_wr(&dev->mt76, MT_SSUSB_EPCTL_CSR_EP_RST_OPT, val); in mt7921u_epctl_rst_opt() 158 val = mt7921u_uhw_rr(&dev->mt76, MT_CBTOP_RGU_WF_SUBSYS_RST); in mt7921u_wfsys_reset() 160 mt7921u_uhw_wr(&dev->mt76, MT_CBTOP_RGU_WF_SUBSYS_RST, val); in mt7921u_wfsys_reset() 164 val = mt7921u_uhw_rr(&dev->mt76, MT_CBTOP_RGU_WF_SUBSYS_RST); in mt7921u_wfsys_reset() 166 mt7921u_uhw_wr(&dev->mt76, MT_CBTOP_RGU_WF_SUBSYS_RST, val); in mt7921u_wfsys_reset() 168 mt7921u_uhw_wr(&dev->mt76, MT_UDMA_CONN_INFRA_STATUS_SEL, 0); in mt7921u_wfsys_reset() 170 val = mt7921u_uhw_rr(&dev->mt76, MT_UDMA_CONN_INFRA_STATUS); in mt7921u_wfsys_reset() 187 wake_up(&dev->mt76.mcu.wait); in mt7921u_init_reset() 188 skb_queue_purge(&dev->mt76.mcu.res_q); in mt7921u_init_reset() [all …]
|
D | init.c | 38 memcpy(dev->mt76.alpha2, request->alpha2, sizeof(dev->mt76.alpha2)); in mt7921_regd_notifier() 39 dev->mt76.region = request->dfs_region; in mt7921_regd_notifier() 148 dev->mt76.rxfilter = mt76_rr(dev, MT_WF_RFCR(0)); in mt7921_mac_init() 150 return mt76_connac_mcu_set_rts_thresh(&dev->mt76, 0x92b, 0); in mt7921_mac_init() 192 dev_err(dev->mt76.dev, "hardware init failed\n"); in mt7921_init_hardware() 204 idx = mt76_wcid_alloc(dev->mt76.wcid_mask, MT7921_WTBL_STA - 1); in mt7921_init_wcid() 208 dev->mt76.global_wcid.idx = idx; in mt7921_init_wcid() 209 dev->mt76.global_wcid.hw_key_idx = -1; in mt7921_init_wcid() 210 dev->mt76.global_wcid.tx_info |= MT_WCID_TX_INFO_SET; in mt7921_init_wcid() 211 rcu_assign_pointer(dev->mt76.wcid[idx], &dev->mt76.global_wcid); in mt7921_init_wcid() [all …]
|
D | main.c | 38 int nss = hweight8(phy->mt76->chainmask); in mt7921_init_he_caps() 151 if (is_mt7922(phy->mt76->dev)) { in mt7921_init_he_caps() 163 if (is_mt7922(phy->mt76->dev)) { in mt7921_init_he_caps() 180 &phy->mt76->sband_5g.sband; in mt7921_init_he_caps() 215 if (phy->mt76->cap.has_2ghz) { in mt7921_set_stream_he_caps() 219 band = &phy->mt76->sband_2g.sband; in mt7921_set_stream_he_caps() 224 if (phy->mt76->cap.has_5ghz) { in mt7921_set_stream_he_caps() 228 band = &phy->mt76->sband_5g.sband; in mt7921_set_stream_he_caps() 232 if (phy->mt76->cap.has_6ghz) { in mt7921_set_stream_he_caps() 236 band = &phy->mt76->sband_6g.sband; in mt7921_set_stream_he_caps() [all …]
|
D | mcu.c | 102 ret = mt76_mcu_send_and_get_msg(&dev->mt76, MCU_EXT_QUERY(EFUSE_ACCESS), in mt7921_mcu_read_eeprom() 129 .bss_idx = mvif->mt76.idx, in mt7921_mcu_set_ipv6_ns_filter() 160 struct mt76_phy *mphy = &dev->mt76.phy; in mt7921_mcu_scan_event() 163 spin_lock_bh(&dev->mt76.lock); in mt7921_mcu_scan_event() 165 spin_unlock_bh(&dev->mt76.lock); in mt7921_mcu_scan_event() 192 struct mt76_phy *mphy = &dev->mt76.phy; in mt7921_mcu_connection_loss_event() 205 struct mt76_phy *mphy = &dev->mt76.phy; in mt7921_mcu_bss_event() 290 mt76_connac_mcu_coredump_event(&dev->mt76, skb, in mt7921_mcu_rx_unsolicited_event() 315 mt76_mcu_rx_event(&dev->mt76, skb); in mt7921_mcu_rx_event() 331 mt76_mcu_rx_event(&dev->mt76, skb); in mt7921_mcu_rx_event() [all …]
|
/Linux-v6.1/drivers/net/wireless/mediatek/mt76/mt7615/ |
D | mcu.c | 73 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 …]
|
D | main.c | 24 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 …]
|
D | pci_init.c | 45 if (is_mt7663(&dev->mt76)) { in mt7615_init_hardware() 58 idx = mt76_wcid_alloc(dev->mt76.wcid_mask, MT7615_WTBL_STA - 1); in mt7615_init_hardware() 62 dev->mt76.global_wcid.idx = idx; in mt7615_init_hardware() 63 dev->mt76.global_wcid.hw_key_idx = -1; in mt7615_init_hardware() 64 rcu_assign_pointer(dev->mt76.wcid[idx], &dev->mt76.global_wcid); in mt7615_init_hardware() 74 struct mt76_dev *mt76; in mt7615_led_set_config() local 77 mt76 = container_of(led_cdev, struct mt76_dev, led_cdev); in mt7615_led_set_config() 78 dev = container_of(mt76, struct mt7615_dev, mt76); in mt7615_led_set_config() 87 addr = mt7615_reg_map(dev, MT_LED_STATUS_0(mt76->led_pin)); in mt7615_led_set_config() 89 addr = mt7615_reg_map(dev, MT_LED_STATUS_1(mt76->led_pin)); in mt7615_led_set_config() [all …]
|
D | pci_mac.c | 65 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 …]
|
D | eeprom.c | 54 dev->mt76.otp.data = devm_kzalloc(dev->mt76.dev, len, GFP_KERNEL); in mt7615_efuse_init() 55 dev->mt76.otp.size = len; in mt7615_efuse_init() 56 if (!dev->mt76.otp.data) in mt7615_efuse_init() 59 buf = dev->mt76.otp.data; in mt7615_efuse_init() 75 ret = mt76_eeprom_init(&dev->mt76, MT7615_EEPROM_FULL_SIZE); in mt7615_eeprom_load() 99 u8 val, *eeprom = dev->mt76.eeprom.data; in mt7615_eeprom_parse_hw_band_cap() 101 if (is_mt7663(&dev->mt76)) { in mt7615_eeprom_parse_hw_band_cap() 108 if (is_mt7622(&dev->mt76)) { in mt7615_eeprom_parse_hw_band_cap() 114 if (is_mt7611(&dev->mt76)) { in mt7615_eeprom_parse_hw_band_cap() 141 u8 *eeprom = dev->mt76.eeprom.data; in mt7615_eeprom_parse_hw_cap() [all …]
|
D | dma.c | 40 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() 91 dev = container_of(napi->dev, struct mt7615_dev, mt76.napi_dev); in mt7615_poll_rx() 95 queue_work(dev->mt76.wq, &dev->pm.wake_work); in mt7615_poll_rx() 106 struct mt76_dev *mdev = &dev->mt76; in mt7615_wait_pdma_busy() [all …]
|
D | mmio.c | 70 if (is_mt7663(&dev->mt76)) { in mt7615_reg_map() 85 struct mt7615_dev *dev = container_of(mdev, struct mt7615_dev, mt76); in mt7615_rx_poll_complete() 113 intr &= dev->mt76.mmio.irqmask; in mt7615_irq_tasklet() 116 trace_dev_irq(&dev->mt76, intr, dev->mt76.mmio.irqmask); in mt7615_irq_tasklet() 121 mt76_set_irq_mask(&dev->mt76, MT_INT_MASK_CSR, mask, 0); in mt7615_irq_tasklet() 124 napi_schedule(&dev->mt76.tx_napi); in mt7615_irq_tasklet() 127 napi_schedule(&dev->mt76.napi[0]); in mt7615_irq_tasklet() 130 napi_schedule(&dev->mt76.napi[1]); in mt7615_irq_tasklet() 135 if (is_mt7663(&dev->mt76)) { in mt7615_irq_tasklet() 148 queue_work(dev->mt76.wq, &dev->reset_work); in mt7615_irq_tasklet() [all …]
|
/Linux-v6.1/drivers/net/wireless/mediatek/mt76/mt7915/ |
D | main.c | 20 return phy && test_bit(MT76_STATE_RUNNING, &phy->mt76->state); in mt7915_dev_running() 32 mutex_lock(&dev->mt76.mutex); in mt7915_start() 37 ret = mt76_connac_mcu_set_pm(&dev->mt76, 0, 0); in mt7915_start() 49 ret = mt76_connac_mcu_set_pm(&dev->mt76, 1, 0); in mt7915_start() 60 ret = mt76_connac_mcu_set_rts_thresh(&dev->mt76, 0x92b, in mt7915_start() 73 set_bit(MT76_STATE_RUNNING, &phy->mt76->state); in mt7915_start() 75 if (!mt76_testmode_enabled(phy->mt76)) in mt7915_start() 76 ieee80211_queue_delayed_work(hw, &phy->mt76->mac_work, in mt7915_start() 83 mutex_unlock(&dev->mt76.mutex); in mt7915_start() 93 cancel_delayed_work_sync(&phy->mt76->mac_work); in mt7915_stop() [all …]
|
D | eeprom.c | 10 struct mt76_dev *mdev = &dev->mt76; in mt7915_eeprom_load_precal() 26 offs = is_mt7915(&dev->mt76) ? MT_EE_PRECAL : MT_EE_PRECAL_V2; in mt7915_eeprom_load_precal() 33 u8 *eeprom = dev->mt76.eeprom.data; in mt7915_check_eeprom() 48 switch (mt76_chip(&dev->mt76)) { in mt7915_eeprom_name() 76 u8 *eeprom = dev->mt76.eeprom.data; in mt7915_eeprom_load_default() 80 ret = request_firmware(&fw, mt7915_eeprom_name(dev), dev->mt76.dev); in mt7915_eeprom_load_default() 85 dev_err(dev->mt76.dev, "Invalid default bin\n"); in mt7915_eeprom_load_default() 104 ret = mt76_eeprom_init(&dev->mt76, eeprom_size); in mt7915_eeprom_load() 133 u8 *eeprom = dev->mt76.eeprom.data; in mt7915_eeprom_parse_band_config() 139 if (!is_mt7915(&dev->mt76)) { in mt7915_eeprom_parse_band_config() [all …]
|
D | init.c | 83 mutex_lock(&phy->dev->mt76.mutex); in mt7915_thermal_temp_store() 86 mutex_unlock(&phy->dev->mt76.mutex); in mt7915_thermal_temp_store() 163 struct wiphy *wiphy = phy->mt76->hw->wiphy; in mt7915_unregister_thermal() 174 struct wiphy *wiphy = phy->mt76->hw->wiphy; in mt7915_thermal_init() 211 struct mt76_dev *mt76; in mt7915_led_set_config() local 214 mt76 = container_of(led_cdev, struct mt76_dev, led_cdev); in mt7915_led_set_config() 215 dev = container_of(mt76, struct mt7915_dev, mt76); in mt7915_led_set_config() 230 if (dev->mt76.led_al) in mt7915_led_set_config() 307 memcpy(dev->mt76.alpha2, request->alpha2, sizeof(dev->mt76.alpha2)); in mt7915_regd_notifier() 308 dev->mt76.region = request->dfs_region; in mt7915_regd_notifier() [all …]
|
D | mmio.c | 359 if (is_mt7986(&dev->mt76)) in mt7915_reg_map_l1() 362 l1_remap = is_mt7915(&dev->mt76) ? in mt7915_reg_map_l1() 365 dev->bus_ops->rmw(&dev->mt76, l1_remap, in mt7915_reg_map_l1() 369 dev->bus_ops->rr(&dev->mt76, l1_remap); in mt7915_reg_map_l1() 378 if (is_mt7915(&dev->mt76)) { in mt7915_reg_map_l2() 382 dev->bus_ops->rmw(&dev->mt76, MT_HIF_REMAP_L2, in mt7915_reg_map_l2() 387 dev->bus_ops->rr(&dev->mt76, MT_HIF_REMAP_L2); in mt7915_reg_map_l2() 389 u32 ofs = is_mt7986(&dev->mt76) ? 0x400000 : 0; in mt7915_reg_map_l2() 394 dev->bus_ops->rmw(&dev->mt76, MT_HIF_REMAP_L2_MT7916 + ofs, in mt7915_reg_map_l2() 399 dev->bus_ops->rr(&dev->mt76, MT_HIF_REMAP_L2_MT7916 + ofs); in mt7915_reg_map_l2() [all …]
|
/Linux-v6.1/drivers/net/wireless/mediatek/mt76/mt7603/ |
D | core.c | 8 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() 46 napi_schedule(&dev->mt76.napi[0]); in mt7603_irq_handler() 51 napi_schedule(&dev->mt76.napi[1]); in mt7603_irq_handler() 62 dev->bus_ops->wr(&dev->mt76, MT_MCU_PCIE_REMAP_2, base); in mt7603_reg_map()
|
D | eeprom.c | 51 dev->mt76.otp.data = devm_kzalloc(dev->mt76.dev, len, GFP_KERNEL); in mt7603_efuse_init() 52 dev->mt76.otp.size = len; in mt7603_efuse_init() 53 if (!dev->mt76.otp.data) in mt7603_efuse_init() 56 buf = dev->mt76.otp.data; in mt7603_efuse_init() 104 struct device_node *np = dev->mt76.dev->of_node; in mt7603_apply_cal_free_data() 105 u8 *eeprom = dev->mt76.eeprom.data; in mt7603_apply_cal_free_data() 130 ret = mt76_eeprom_init(&dev->mt76, MT7603_EEPROM_SIZE); in mt7603_eeprom_load() 165 if (dev->mt76.otp.data) { in mt7603_eeprom_init() 166 if (mt7603_check_eeprom(&dev->mt76) == 0) in mt7603_eeprom_init() 167 mt7603_apply_cal_free_data(dev, dev->mt76.otp.data); in mt7603_eeprom_init() [all …]
|
/Linux-v6.1/drivers/net/wireless/mediatek/mt76/mt76x2/ |
D | usb_mcu.c | 23 mt76u_vendor_request(&dev->mt76, MT_VEND_DEV_MODE, in mt76x2u_mcu_load_ivb() 30 struct mt76_usb *usb = &dev->mt76.usb; in mt76x2u_mcu_enable_patch() 38 mt76u_vendor_request(&dev->mt76, MT_VEND_DEV_MODE, in mt76x2u_mcu_enable_patch() 45 struct mt76_usb *usb = &dev->mt76.usb; in mt76x2u_mcu_reset_wmt() 52 mt76u_vendor_request(&dev->mt76, MT_VEND_DEV_MODE, in mt76x2u_mcu_reset_wmt() 67 dev_err(dev->mt76.dev, in mt76x2u_mcu_load_rom_patch() 81 dev_info(dev->mt76.dev, "ROM patch already applied\n"); in mt76x2u_mcu_load_rom_patch() 85 err = request_firmware(&fw, MT7662_ROM_PATCH, dev->mt76.dev); in mt76x2u_mcu_load_rom_patch() 90 dev_err(dev->mt76.dev, "failed to load firmware\n"); in mt76x2u_mcu_load_rom_patch() 96 dev_info(dev->mt76.dev, "ROM patch build: %.15s\n", hdr->build_time); in mt76x2u_mcu_load_rom_patch() [all …]
|
D | pci_mcu.c | 25 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 …]
|