Lines Matching refs:mt76_dev
27 struct mt76_dev;
43 u32 (*rr)(struct mt76_dev *dev, u32 offset);
44 void (*wr)(struct mt76_dev *dev, u32 offset, u32 val);
45 u32 (*rmw)(struct mt76_dev *dev, u32 offset, u32 mask, u32 val);
46 void (*write_copy)(struct mt76_dev *dev, u32 offset, const void *data,
48 void (*read_copy)(struct mt76_dev *dev, u32 offset, void *data,
50 int (*wr_rp)(struct mt76_dev *dev, u32 base,
52 int (*rd_rp)(struct mt76_dev *dev, u32 base,
147 int (*mcu_send_msg)(struct mt76_dev *dev, int cmd, const void *data,
149 int (*mcu_skb_send_msg)(struct mt76_dev *dev, struct sk_buff *skb,
151 u32 (*mcu_rr)(struct mt76_dev *dev, u32 offset);
152 void (*mcu_wr)(struct mt76_dev *dev, u32 offset, u32 val);
153 int (*mcu_wr_rp)(struct mt76_dev *dev, u32 base,
155 int (*mcu_rd_rp)(struct mt76_dev *dev, u32 base,
157 int (*mcu_restart)(struct mt76_dev *dev);
161 int (*init)(struct mt76_dev *dev);
163 int (*alloc)(struct mt76_dev *dev, struct mt76_queue *q,
167 int (*tx_queue_skb)(struct mt76_dev *dev, enum mt76_txq_id qid,
171 int (*tx_queue_skb_raw)(struct mt76_dev *dev, enum mt76_txq_id qid,
174 void *(*dequeue)(struct mt76_dev *dev, struct mt76_queue *q, bool flush,
177 void (*rx_reset)(struct mt76_dev *dev, enum mt76_rxq_id qid);
179 void (*tx_cleanup)(struct mt76_dev *dev, enum mt76_txq_id qid,
182 void (*kick)(struct mt76_dev *dev, struct mt76_queue *q);
246 struct mt76_dev *dev;
316 void (*update_survey)(struct mt76_dev *dev);
318 int (*tx_prepare_skb)(struct mt76_dev *dev, void *txwi_ptr,
323 void (*tx_complete_skb)(struct mt76_dev *dev,
326 bool (*tx_status_data)(struct mt76_dev *dev, u8 *update);
328 void (*rx_skb)(struct mt76_dev *dev, enum mt76_rxq_id q,
331 void (*rx_poll_complete)(struct mt76_dev *dev, enum mt76_rxq_id q);
333 void (*sta_ps)(struct mt76_dev *dev, struct ieee80211_sta *sta,
336 int (*sta_add)(struct mt76_dev *dev, struct ieee80211_vif *vif,
339 void (*sta_assoc)(struct mt76_dev *dev, struct ieee80211_vif *vif,
342 void (*sta_remove)(struct mt76_dev *dev, struct ieee80211_vif *vif,
511 int (*set_state)(struct mt76_dev *dev, enum mt76_testmode_state state);
512 int (*set_params)(struct mt76_dev *dev, struct nlattr **tb,
514 int (*dump_stats)(struct mt76_dev *dev, struct sk_buff *msg);
553 struct mt76_dev *dev;
573 struct mt76_dev { struct
715 mt76_wcid_hw(struct mt76_dev *dev, u16 wcid) in mt76_wcid_hw()
724 bool __mt76_poll(struct mt76_dev *dev, u32 offset, u32 mask, u32 val,
729 bool __mt76_poll_msec(struct mt76_dev *dev, u32 offset, u32 mask, u32 val,
734 void mt76_mmio_init(struct mt76_dev *dev, void __iomem *regs);
737 static inline u16 mt76_chip(struct mt76_dev *dev) in mt76_chip()
742 static inline u16 mt76_rev(struct mt76_dev *dev) in mt76_rev()
762 struct mt76_dev *mt76_alloc_device(struct device *pdev, unsigned int size,
765 int mt76_register_device(struct mt76_dev *dev, bool vht,
767 void mt76_unregister_device(struct mt76_dev *dev);
768 void mt76_free_device(struct mt76_dev *dev);
771 struct mt76_phy *mt76_alloc_phy(struct mt76_dev *dev, unsigned int size,
775 struct dentry *mt76_register_debugfs(struct mt76_dev *dev);
780 int mt76_eeprom_init(struct mt76_dev *dev, int len);
781 void mt76_eeprom_override(struct mt76_dev *dev);
784 mt76_dev_phy(struct mt76_dev *dev, bool phy_ext) in mt76_dev_phy()
792 mt76_phy_hw(struct mt76_dev *dev, bool phy_ext) in mt76_phy_hw()
798 mt76_get_txwi_ptr(struct mt76_dev *dev, struct mt76_txwi_cache *t) in mt76_get_txwi_ptr()
891 static inline bool mt76_testmode_enabled(struct mt76_dev *dev) in mt76_testmode_enabled()
900 void mt76_rx(struct mt76_dev *dev, enum mt76_rxq_id q, struct sk_buff *skb);
904 void mt76_stop_tx_queues(struct mt76_dev *dev, struct ieee80211_sta *sta,
917 void mt76_update_survey(struct mt76_dev *dev);
923 int mt76_rx_aggr_start(struct mt76_dev *dev, struct mt76_wcid *wcid, u8 tid,
925 void mt76_rx_aggr_stop(struct mt76_dev *dev, struct mt76_wcid *wcid, u8 tid);
927 void mt76_wcid_key_setup(struct mt76_dev *dev, struct mt76_wcid *wcid,
930 void mt76_tx_status_lock(struct mt76_dev *dev, struct sk_buff_head *list)
932 void mt76_tx_status_unlock(struct mt76_dev *dev, struct sk_buff_head *list)
935 int mt76_tx_status_skb_add(struct mt76_dev *dev, struct mt76_wcid *wcid,
937 struct sk_buff *mt76_tx_status_skb_get(struct mt76_dev *dev,
940 void mt76_tx_status_skb_done(struct mt76_dev *dev, struct sk_buff *skb,
942 void mt76_tx_complete_skb(struct mt76_dev *dev, u16 wcid, struct sk_buff *skb);
943 void mt76_tx_status_check(struct mt76_dev *dev, struct mt76_wcid *wcid,
949 void __mt76_sta_remove(struct mt76_dev *dev, struct ieee80211_vif *vif,
954 int mt76_get_min_avg_rssi(struct mt76_dev *dev, bool ext_phy);
959 void mt76_csa_check(struct mt76_dev *dev);
960 void mt76_csa_finish(struct mt76_dev *dev);
965 int mt76_get_rate(struct mt76_dev *dev,
976 int mt76_testmode_set_state(struct mt76_dev *dev, enum mt76_testmode_state state);
978 static inline void mt76_testmode_reset(struct mt76_dev *dev, bool disable) in mt76_testmode_reset()
993 mt76_tx_status_get_hw(struct mt76_dev *dev, struct sk_buff *skb) in mt76_tx_status_get_hw()
1006 void mt76_put_txwi(struct mt76_dev *dev, struct mt76_txwi_cache *t);
1007 void mt76_rx_complete(struct mt76_dev *dev, struct sk_buff_head *frames,
1009 void mt76_rx_poll_complete(struct mt76_dev *dev, enum mt76_rxq_id q,
1012 void mt76_testmode_tx_pending(struct mt76_dev *dev);
1013 void mt76_queue_tx_complete(struct mt76_dev *dev, struct mt76_queue *q,
1033 mt76u_bulk_msg(struct mt76_dev *dev, void *data, int len, int *actual_len, in mt76u_bulk_msg()
1050 int mt76u_vendor_request(struct mt76_dev *dev, u8 req,
1053 void mt76u_single_wr(struct mt76_dev *dev, const u8 req,
1055 int mt76u_init(struct mt76_dev *dev, struct usb_interface *intf,
1057 int mt76u_alloc_mcu_queue(struct mt76_dev *dev);
1058 int mt76u_alloc_queues(struct mt76_dev *dev);
1059 void mt76u_stop_tx(struct mt76_dev *dev);
1060 void mt76u_stop_rx(struct mt76_dev *dev);
1061 int mt76u_resume_rx(struct mt76_dev *dev);
1062 void mt76u_queues_deinit(struct mt76_dev *dev);
1064 int mt76s_init(struct mt76_dev *dev, struct sdio_func *func,
1066 int mt76s_alloc_queues(struct mt76_dev *dev);
1067 void mt76s_stop_txrx(struct mt76_dev *dev);
1068 void mt76s_deinit(struct mt76_dev *dev);
1071 mt76_mcu_msg_alloc(struct mt76_dev *dev, const void *data,
1073 void mt76_mcu_rx_event(struct mt76_dev *dev, struct sk_buff *skb);
1074 struct sk_buff *mt76_mcu_get_response(struct mt76_dev *dev,
1077 void mt76_set_irq_mask(struct mt76_dev *dev, u32 addr, u32 clear, u32 set);