/Linux-v4.19/drivers/net/wireless/mediatek/mt76/ |
D | mt76x2u_mcu.c | 49 return mt76u_mcu_send_msg(&dev->mt76, skb, CMD_FUN_SET_OP, in mt76x2u_mcu_function_select() 67 return mt76u_mcu_send_msg(&dev->mt76, skb, CMD_POWER_SAVING_OP, in mt76x2u_mcu_set_radio_state() 97 return mt76u_mcu_send_msg(&dev->mt76, skb, CMD_LOAD_CR, true); in mt76x2u_mcu_load_cr() 126 mt76u_mcu_send_msg(&dev->mt76, skb, CMD_SWITCH_CHANNEL_OP, true); in mt76x2u_mcu_set_channel() 135 return mt76u_mcu_send_msg(&dev->mt76, skb, CMD_SWITCH_CHANNEL_OP, true); in mt76x2u_mcu_set_channel() 153 return mt76u_mcu_send_msg(&dev->mt76, skb, CMD_CALIBRATION_OP, true); in mt76x2u_mcu_calibrate() 174 return mt76u_mcu_send_msg(&dev->mt76, skb, CMD_INIT_GAIN_OP, true); in mt76x2u_mcu_init_gain() 200 return mt76u_mcu_send_msg(&dev->mt76, skb, CMD_DYNC_VGA_OP, true); in mt76x2u_mcu_set_dynamic_vga() 218 return mt76u_mcu_send_msg(&dev->mt76, skb, CMD_CALIBRATION_OP, true); in mt76x2u_mcu_tssi_comp() 223 mt76u_vendor_request(&dev->mt76, MT_VEND_DEV_MODE, in mt76x2u_mcu_load_ivb() [all …]
|
D | mt76x2_dma.c | 24 struct mt76_queue *q = &dev->mt76.q_tx[qid]; in mt76x2_tx_queue_mcu() 35 addr = dma_map_single(dev->mt76.dev, skb->data, skb->len, in mt76x2_tx_queue_mcu() 37 if (dma_mapping_error(dev->mt76.dev, addr)) in mt76x2_tx_queue_mcu() 56 q->regs = dev->mt76.regs + MT_TX_RING_BASE + idx * MT_RING_SIZE; in mt76x2_init_tx_queue() 75 q->regs = dev->mt76.regs + MT_RX_RING_BASE + idx * MT_RING_SIZE; in mt76x2_init_rx_queue() 119 mt76_dma_attach(&dev->mt76); in mt76x2_dma_init() 129 ret = mt76x2_init_tx_queue(dev, &dev->mt76.q_tx[i], in mt76x2_dma_init() 135 ret = mt76x2_init_tx_queue(dev, &dev->mt76.q_tx[MT_TXQ_PSD], in mt76x2_dma_init() 140 ret = mt76x2_init_tx_queue(dev, &dev->mt76.q_tx[MT_TXQ_MCU], in mt76x2_dma_init() 145 ret = mt76x2_init_rx_queue(dev, &dev->mt76.q_rx[MT_RXQ_MCU], 1, in mt76x2_dma_init() [all …]
|
D | mt76x2_usb.c | 48 err = mt76u_init(&dev->mt76, intf); in mt76x2u_probe() 52 dev->mt76.rev = mt76_rr(dev, MT_ASIC_VERSION); in mt76x2u_probe() 53 dev_info(dev->mt76.dev, "ASIC revision: %08x\n", dev->mt76.rev); in mt76x2u_probe() 75 set_bit(MT76_REMOVED, &dev->mt76.state); in mt76x2u_disconnect() 88 struct mt76_usb *usb = &dev->mt76.usb; in mt76x2u_suspend() 90 mt76u_stop_queues(&dev->mt76); in mt76x2u_suspend() 100 struct mt76_usb *usb = &dev->mt76.usb; in mt76x2u_resume() 104 err = mt76u_submit_buf(&dev->mt76, USB_DIR_IN, in mt76x2u_resume() 112 err = mt76u_submit_rx_buffers(&dev->mt76); in mt76x2u_resume()
|
D | mt76x2u_init.c | 119 dev->mt76.eeprom.data = devm_kzalloc(dev->mt76.dev, in mt76x2u_init_eeprom() 122 dev->mt76.eeprom.size = MT7612U_EEPROM_SIZE; in mt76x2u_init_eeprom() 123 if (!dev->mt76.eeprom.data) in mt76x2u_init_eeprom() 128 put_unaligned_le32(val, dev->mt76.eeprom.data + i); in mt76x2u_init_eeprom() 150 dev = container_of(mdev, struct mt76x2_dev, mt76); in mt76x2u_alloc_device() 216 mt76x2u_mac_setaddr(dev, dev->mt76.eeprom.data + MT_EE_MAC_ADDR); in mt76x2u_init_hardware() 267 err = mt76u_mcu_init_rx(&dev->mt76); in mt76x2u_register_device() 271 err = mt76u_alloc_queues(&dev->mt76); in mt76x2u_register_device() 281 err = mt76_register_device(&dev->mt76, true, mt76x2_rates, in mt76x2u_register_device() 287 if (mt76u_check_sg(&dev->mt76)) in mt76x2u_register_device() [all …]
|
D | mt76x2_init.c | 100 const u8 *macaddr = dev->mt76.macaddr; in mt76x2_mac_reset() 386 set_bit(MT76_STATE_INITIALIZED, &dev->mt76.state); in mt76x2_init_hardware() 435 dev = container_of(mdev, struct mt76x2_dev, mt76); in mt76x2_alloc_device() 481 static void mt76x2_led_set_config(struct mt76_dev *mt76, u8 delay_on, in mt76x2_led_set_config() argument 484 struct mt76x2_dev *dev = container_of(mt76, struct mt76x2_dev, in mt76x2_led_set_config() 485 mt76); in mt76x2_led_set_config() 492 mt76_wr(dev, MT_LED_S0(mt76->led_pin), val); in mt76x2_led_set_config() 493 mt76_wr(dev, MT_LED_S1(mt76->led_pin), val); in mt76x2_led_set_config() 495 val = MT_LED_CTRL_REPLAY(mt76->led_pin) | in mt76x2_led_set_config() 496 MT_LED_CTRL_KICK(mt76->led_pin); in mt76x2_led_set_config() [all …]
|
D | mt76x2_main.c | 38 set_bit(MT76_STATE_RUNNING, &dev->mt76.state); in mt76x2_start() 51 clear_bit(MT76_STATE_RUNNING, &dev->mt76.state); in mt76x2_stop() 64 idx = 1 + (((dev->mt76.macaddr[0] ^ vif->addr[0]) >> 2) & 7); in mt76x2_add_interface() 97 set_bit(MT76_RESET, &dev->mt76.state); in mt76x2_set_channel() 99 mt76_set_channel(&dev->mt76); in mt76x2_set_channel() 117 clear_bit(MT76_RESET, &dev->mt76.state); in mt76x2_set_channel() 119 mt76_txq_schedule_all(&dev->mt76); in mt76x2_set_channel() 147 if (test_bit(MT76_STATE_RUNNING, &dev->mt76.state)) { in mt76x2_config() 205 struct mt76x2_dev *dev = container_of(mdev, struct mt76x2_dev, mt76); in mt76x2_sta_ps() 208 mt76_stop_tx_queues(&dev->mt76, sta, true); in mt76x2_sta_ps() [all …]
|
D | mt76x2u_main.c | 30 set_bit(MT76_STATE_RUNNING, &dev->mt76.state); in mt76x2u_start() 42 clear_bit(MT76_STATE_RUNNING, &dev->mt76.state); in mt76x2u_stop() 54 if (!ether_addr_equal(dev->mt76.macaddr, vif->addr)) in mt76x2u_add_interface() 72 set_bit(MT76_RESET, &dev->mt76.state); in mt76x2u_set_channel() 74 mt76_set_channel(&dev->mt76); in mt76x2u_set_channel() 84 clear_bit(MT76_RESET, &dev->mt76.state); in mt76x2u_set_channel() 85 mt76_txq_schedule_all(&dev->mt76); in mt76x2u_set_channel() 141 if (test_bit(MT76_STATE_RUNNING, &dev->mt76.state)) in mt76x2u_config() 156 set_bit(MT76_SCANNING, &dev->mt76.state); in mt76x2u_sw_scan() 164 clear_bit(MT76_SCANNING, &dev->mt76.state); in mt76x2u_sw_scan_complete()
|
D | mt76.h | 402 #define mt76_rr(dev, ...) (dev)->mt76.bus->rr(&((dev)->mt76), __VA_ARGS__) 403 #define mt76_wr(dev, ...) (dev)->mt76.bus->wr(&((dev)->mt76), __VA_ARGS__) 404 #define mt76_rmw(dev, ...) (dev)->mt76.bus->rmw(&((dev)->mt76), __VA_ARGS__) 405 #define mt76_wr_copy(dev, ...) (dev)->mt76.bus->copy(&((dev)->mt76), __VA_ARGS__) 416 #define mt76_hw(dev) (dev)->mt76.hw 421 #define mt76_poll(dev, ...) __mt76_poll(&((dev)->mt76), __VA_ARGS__) 426 #define mt76_poll_msec(dev, ...) __mt76_poll_msec(&((dev)->mt76), __VA_ARGS__) 440 #define mt76xx_chip(dev) mt76_chip(&((dev)->mt76)) 441 #define mt76xx_rev(dev) mt76_rev(&((dev)->mt76)) 443 #define mt76_init_queues(dev) (dev)->mt76.queue_ops->init(&((dev)->mt76)) [all …]
|
D | mt76x2_eeprom.c | 27 if (field + len > dev->mt76.eeprom.size) in mt76x2_eeprom_copy() 30 memcpy(dest, dev->mt76.eeprom.data + field, len); in mt76x2_eeprom_copy() 37 void *src = dev->mt76.eeprom.data + MT_EE_MAC_ADDR; in mt76x2_eeprom_get_macaddr() 39 memcpy(dev->mt76.macaddr, src, ETH_ALEN); in mt76x2_eeprom_get_macaddr() 49 dev->mt76.cap.has_5ghz = true; in mt76x2_eeprom_parse_hw_cap() 52 dev->mt76.cap.has_2ghz = true; in mt76x2_eeprom_parse_hw_cap() 55 dev->mt76.cap.has_2ghz = true; in mt76x2_eeprom_parse_hw_cap() 56 dev->mt76.cap.has_5ghz = true; in mt76x2_eeprom_parse_hw_cap() 165 u8 *eeprom = dev->mt76.eeprom.data; in mt76x2_apply_cal_free_data() 206 u16 val = get_unaligned_le16(dev->mt76.eeprom.data); in mt76x2_check_eeprom() [all …]
|
D | mt76x2_pci.c | 55 mt76_mmio_init(&dev->mt76, pcim_iomap_table(pdev)[0]); in mt76pci_probe() 57 dev->mt76.rev = mt76_rr(dev, MT_ASIC_VERSION); in mt76pci_probe() 58 dev_info(dev->mt76.dev, "ASIC revision: %08x\n", dev->mt76.rev); in mt76pci_probe() 60 ret = devm_request_irq(dev->mt76.dev, pdev->irq, mt76x2_irq_handler, in mt76pci_probe() 91 struct mt76x2_dev *dev = container_of(mdev, struct mt76x2_dev, mt76); in mt76pci_remove()
|
D | mt76x2u_mac.c | 140 if (test_bit(MT76_REMOVED, &dev->mt76.state)) in mt76x2u_mac_stop() 200 dev_warn(dev->mt76.dev, "MAC RX failed to stop\n"); in mt76x2u_mac_stop() 226 ether_addr_copy(dev->mt76.macaddr, addr); in mt76x2u_mac_setaddr() 228 if (!is_valid_ether_addr(dev->mt76.macaddr)) { in mt76x2u_mac_setaddr() 229 eth_random_addr(dev->mt76.macaddr); in mt76x2u_mac_setaddr() 230 dev_info(dev->mt76.dev, in mt76x2u_mac_setaddr() 232 dev->mt76.macaddr); in mt76x2u_mac_setaddr() 235 mt76_wr(dev, MT_MAC_ADDR_DW0, get_unaligned_le32(dev->mt76.macaddr)); in mt76x2u_mac_setaddr() 237 get_unaligned_le16(dev->mt76.macaddr + 4) | in mt76x2u_mac_setaddr()
|
D | mt76x2_mcu.c | 79 dev_err(dev->mt76.dev, in mt76x2_mcu_msg_send() 113 dev_err(dev->mt76.dev, in mt76pci_load_rom_patch() 127 dev_info(dev->mt76.dev, "ROM patch already applied\n"); in mt76pci_load_rom_patch() 131 ret = request_firmware(&fw, MT7662_ROM_PATCH, dev->mt76.dev); in mt76pci_load_rom_patch() 137 dev_err(dev->mt76.dev, "Failed to load firmware\n"); in mt76pci_load_rom_patch() 142 dev_info(dev->mt76.dev, "ROM patch build: %.15s\n", hdr->build_time); in mt76pci_load_rom_patch() 156 dev_err(dev->mt76.dev, "Failed to load ROM patch\n"); in mt76pci_load_rom_patch() 177 ret = request_firmware(&fw, MT7662_FIRMWARE, dev->mt76.dev); in mt76pci_load_firmware() 194 dev_info(dev->mt76.dev, "Firmware Version: %d.%d.%02d\n", in mt76pci_load_firmware() 198 dev_info(dev->mt76.dev, "Build: %x\n", val); in mt76pci_load_firmware() [all …]
|
D | mt76x2_core.c | 34 struct mt76x2_dev *dev = container_of(mdev, struct mt76x2_dev, mt76); in mt76x2_rx_poll_complete() 47 if (!test_bit(MT76_STATE_INITIALIZED, &dev->mt76.state)) in mt76x2_irq_handler() 61 napi_schedule(&dev->mt76.napi[0]); in mt76x2_irq_handler() 66 napi_schedule(&dev->mt76.napi[1]); in mt76x2_irq_handler() 74 mt76_queue_kick(dev, &dev->mt76.q_tx[MT_TXQ_PSD]); in mt76x2_irq_handler()
|
D | Makefile | 1 obj-$(CONFIG_MT76_CORE) += mt76.o 2 obj-$(CONFIG_MT76_USB) += mt76-usb.o 8 mt76-y := \ 11 mt76-usb-y := usb.o usb_trace.o usb_mcu.o
|
D | mt76x2_mac.c | 38 if (!test_bit(MT76_STATE_RUNNING, &dev->mt76.state)) in mt76x2_mac_poll_tx_status() 91 struct mt76x2_dev *dev = container_of(mdev, struct mt76x2_dev, mt76); in mt76x2_tx_complete_skb() 211 struct mt76x2_dev *dev = container_of(mdev, struct mt76x2_dev, mt76); in mt76x2_update_channel() 215 state = mt76_channel_state(&dev->mt76, dev->mt76.chandef.chan); in mt76x2_update_channel() 220 spin_lock_bh(&dev->mt76.cc_lock); in mt76x2_update_channel() 223 spin_unlock_bh(&dev->mt76.cc_lock); in mt76x2_update_channel() 232 mt76x2_update_channel(&dev->mt76); in mt76x2_mac_work()
|
D | mt76x2u_phy.c | 55 struct ieee80211_channel *chan = dev->mt76.chandef.chan; in mt76x2u_phy_channel_calibrate() 77 struct ieee80211_channel *chan = dev->mt76.chandef.chan; in mt76x2u_phy_tssi_compensate() 118 u8 channel = dev->mt76.chandef.chan->hw_value; in mt76x2u_phy_update_channel_gain() 122 freq = dev->mt76.chandef.chan->center_freq; in mt76x2u_phy_update_channel_gain() 123 freq1 = dev->mt76.chandef.center_freq1; in mt76x2u_phy_update_channel_gain() 125 switch (dev->mt76.chandef.width) { in mt76x2u_phy_update_channel_gain() 190 bool scan = test_bit(MT76_SCANNING, &dev->mt76.state); in mt76x2u_phy_set_channel() 290 chan = dev->mt76.chandef.chan; in mt76x2u_phy_set_channel()
|
D | mt76x2_phy.c | 25 struct ieee80211_channel *chan = dev->mt76.chandef.chan; in mt76x2_phy_tssi_init_cal() 48 struct ieee80211_channel *chan = dev->mt76.chandef.chan; in mt76x2_phy_channel_calibrate() 86 switch (dev->mt76.antenna_mask) { in mt76x2_phy_set_antenna() 136 switch (dev->mt76.chandef.width) { in mt76x2_get_rssi_gain_thresh() 149 switch (dev->mt76.chandef.width) { in mt76x2_get_low_rssi_gain_thresh() 168 if (dev->mt76.chandef.width >= NL80211_CHAN_WIDTH_40) in mt76x2_phy_set_gain_val() 180 if (dev->mt76.chandef.chan->flags & IEEE80211_CHAN_RADAR) in mt76x2_phy_set_gain_val() 225 if (dev->mt76.chandef.width == NL80211_CHAN_WIDTH_80) { in mt76x2_phy_update_channel_gain() 250 if (dev->mt76.chandef.width == NL80211_CHAN_WIDTH_80) in mt76x2_phy_update_channel_gain() 271 bool scan = test_bit(MT76_SCANNING, &dev->mt76.state); in mt76x2_phy_set_channel() [all …]
|
D | mt76x2_common.c | 40 mt76_txq_init(&dev->mt76, txq); in mt76x2_txq_init() 63 mt76_rx_aggr_start(&dev->mt76, &msta->wcid, tid, *ssn, params->buf_size); in mt76x2_ampdu_action() 67 mt76_rx_aggr_stop(&dev->mt76, &msta->wcid, tid); in mt76x2_ampdu_action() 147 mt76_txq_remove(&dev->mt76, sta->txq[i]); in mt76x2_sta_remove() 162 mt76_txq_remove(&dev->mt76, vif->txq); in mt76x2_remove_interface() 217 mt76_wcid_key_setup(&dev->mt76, wcid, key); in mt76x2_set_key() 240 qid = dev->mt76.q_tx[queue].hw_idx; in mt76x2_conf_tx() 333 struct mt76x2_dev *dev = container_of(mdev, struct mt76x2_dev, mt76); in mt76x2_queue_rx_skb() 348 mt76_rx(&dev->mt76, q, skb); in mt76x2_queue_rx_skb()
|
/Linux-v4.19/drivers/net/wireless/mediatek/mt76/mt76x0/ |
D | init.c | 62 dev_err(dev->mt76.dev, "Error: PLL and XTAL check failed!\n"); in mt76x0_set_wlan_state() 126 dev_dbg(dev->mt76.dev, "MCU not ready\n"); in mt76x0_init_usb_dma() 316 if (test_bit(MT76_REMOVED, &dev->mt76.state)) in mt76x0_mac_stop_hw() 324 dev_warn(dev->mt76.dev, "Warning: TX DMA did not stop!\n"); in mt76x0_mac_stop_hw() 334 dev_warn(dev->mt76.dev, "Warning: MAC TX did not stop!\n"); in mt76x0_mac_stop_hw() 354 dev_warn(dev->mt76.dev, "Warning: MAC RX did not stop!\n"); in mt76x0_mac_stop_hw() 357 dev_warn(dev->mt76.dev, "Warning: RX DMA did not stop!\n"); in mt76x0_mac_stop_hw() 472 if (!test_and_clear_bit(MT76_STATE_INITIALIZED, &dev->mt76.state)) in mt76x0_cleanup() 490 dev->mt76.dev = pdev; in mt76x0_alloc_device() 491 dev->mt76.hw = hw; in mt76x0_alloc_device() [all …]
|
D | usb.c | 87 trace_mt76x0_submit_urb(&dev->mt76, buf->urb); in mt76x0_usb_submit_buf() 90 dev_err(dev->mt76.dev, "Error: submit URB dir:%d ep:%d failed:%d\n", in mt76x0_usb_submit_buf() 116 trace_mt76x0_vend_req(&dev->mt76, pipe, req, req_type, val, offset, in mt76x0_vendor_request() 120 set_bit(MT76_REMOVED, &dev->mt76.state); in mt76x0_vendor_request() 127 dev_err(dev->mt76.dev, "Vendor request req:%02x off:%04x failed:%d\n", in mt76x0_vendor_request() 250 dev_err(dev->mt76.dev, "Error: wrong pipe number in:%d out:%d\n", in mt76x0_assign_pipes() 281 dev->mt76.bus = &usb_ops; in mt76x0_probe() 296 dev_info(dev->mt76.dev, "ASIC revision: %08x MAC revision: %08x\n", in mt76x0_probe() 301 dev_warn(dev->mt76.dev, "Warning: eFUSE not present\n"); in mt76x0_probe() 311 set_bit(MT76_STATE_INITIALIZED, &dev->mt76.state); in mt76x0_probe() [all …]
|
D | dma.c | 79 dev_err_ratelimited(dev->mt76.dev, "Error: incorrect frame len:%u hdr:%u\n", in mt76x0_rx_skb_from_seg() 106 dev_err_once(dev->mt76.dev, "Error: RX path seen a non-pkt urb\n"); in mt76x0_rx_process_seg() 108 trace_mt76x0_rx(&dev->mt76, rxwi, fce_info); in mt76x0_rx_process_seg() 115 ieee80211_rx(dev->mt76.hw, skb); in mt76x0_rx_process_seg() 142 if (!test_bit(MT76_STATE_INITIALIZED, &dev->mt76.state)) in mt76x0_rx_process_entry() 158 trace_mt76x0_rx_dma_aggr(&dev->mt76, cnt, !!new_p); in mt76x0_rx_process_entry() 198 dev_err(dev->mt76.dev, "Error: RX urb failed:%d\n", urb->status); in mt76x0_complete_rx() 233 dev_err(dev->mt76.dev, "Error: TX urb failed:%d\n", urb->status); in mt76x0_complete_tx() 238 trace_mt76x0_tx_dma_done(&dev->mt76, skb); in mt76x0_complete_tx() 244 ieee80211_wake_queue(dev->mt76.hw, skb_get_queue_mapping(skb)); in mt76x0_complete_tx() [all …]
|
D | eeprom.c | 108 …dev_err(dev->mt76.dev, "Error: your device needs default EEPROM file and this driver doesn't suppo… in mt76x0_efuse_physical_size_check() 122 dev_dbg(dev->mt76.dev, "NIC_CONF0: %04x NIC_CONF1: %04x\n", nic_conf0, nic_conf1); in mt76x0_set_chip_cap() 137 dev_dbg(dev->mt76.dev, "Has 2GHZ %d 5GHZ %d\n", dev->ee->has_2ghz, dev->ee->has_5ghz); in mt76x0_set_chip_cap() 143 dev_err(dev->mt76.dev, in mt76x0_set_chip_cap() 151 dev_err(dev->mt76.dev, in mt76x0_set_chip_cap() 155 dev_dbg(dev->mt76.dev, "PA Type %d\n", dev->ee->pa_type); in mt76x0_set_chip_cap() 167 dev_info(dev->mt76.dev, in mt76x0_set_macaddr() 206 dev_dbg(dev->mt76.dev, "REG 2GHZ %u REG 5GHZ %u\n", val, eeprom[MT_EE_COUNTRY_REGION_5GHZ]); in mt76x0_set_country_reg() 213 dev_info(dev->mt76.dev, in mt76x0_set_country_reg() 272 dev_warn(dev->mt76.dev, in mt76x0_set_rssi_offset() [all …]
|
D | mcu.c | 117 dev_warn(dev->mt76.dev, "Warning: %s retrying\n", __func__); in mt76x0_mcu_wait_resp() 136 dev_err(dev->mt76.dev, "Error: MCU resp urb failed:%d\n", in mt76x0_mcu_wait_resp() 143 dev_err(dev->mt76.dev, "Error: MCU resp evt:%lx seq:%hhx-%lx!\n", in mt76x0_mcu_wait_resp() 148 dev_err(dev->mt76.dev, "Error: %s timed out\n", __func__); in mt76x0_mcu_wait_resp() 169 dev_err(dev->mt76.dev, "Error: MCU response pre-completed!\n"); in __mt76x0_mcu_msg_send() 171 trace_mt76x0_mcu_msg_send_cs(&dev->mt76, skb, wait_resp); in __mt76x0_mcu_msg_send() 172 trace_mt76x0_submit_urb_sync(&dev->mt76, cmd_pipe, skb->len); in __mt76x0_mcu_msg_send() 176 dev_err(dev->mt76.dev, "Error: send MCU cmd failed:%d\n", ret); in __mt76x0_mcu_msg_send() 180 dev_err(dev->mt76.dev, "Error: %s sent != skb->len\n", __func__); in __mt76x0_mcu_msg_send() 195 if (test_bit(MT76_REMOVED, &dev->mt76.state)) in mt76x0_mcu_msg_send() [all …]
|
D | tx.c | 54 ieee80211_tx_status(dev->mt76.hw, skb); in mt76x0_tx_status() 91 spin_lock_irqsave(&dev->mt76.lock, flags); in mt76x0_push_txwi() 98 spin_unlock_irqrestore(&dev->mt76.lock, flags); in mt76x0_push_txwi() 162 ieee80211_free_txskb(dev->mt76.hw, skb); in mt76x0_tx() 180 trace_mt76x0_tx(&dev->mt76, skb, msta, txwi); in mt76x0_tx() 192 while (!test_bit(MT76_REMOVED, &dev->mt76.state)) { in mt76x0_tx_stat() 201 trace_mt76x0_tx_status_cleaned(&dev->mt76, cleaned); in mt76x0_tx_stat() 207 else if (test_and_clear_bit(MT76_MORE_STATS, &dev->mt76.state)) in mt76x0_tx_stat() 211 clear_bit(MT76_READING_STATS, &dev->mt76.state); in mt76x0_tx_stat()
|
D | usb.h | 30 return interface_to_usbdev(to_usb_interface(mt76x0->mt76.dev)); in mt76x0_to_usb_dev() 33 static inline struct usb_device *mt76_to_usb_dev(struct mt76_dev *mt76) in mt76_to_usb_dev() argument 35 return interface_to_usbdev(to_usb_interface(mt76->dev)); in mt76_to_usb_dev()
|