Lines Matching full:struct
68 struct mt7615_vif;
69 struct mt7615_sta;
70 struct mt7615_dfs_pulse;
71 struct mt7615_dfs_pattern;
91 struct mt7615_rate_set {
92 struct ieee80211_tx_rate probe_rate;
93 struct ieee80211_tx_rate rates[4];
96 struct mt7615_rate_desc {
104 struct mt7615_wtbl_rate_desc {
105 struct list_head node;
107 struct mt7615_rate_desc rate;
108 struct mt7615_sta *sta;
111 struct mt7663s_intr {
113 struct {
116 struct {
123 struct mt7615_sta {
124 struct mt76_wcid wcid; /* must be first */
126 struct mt7615_vif *vif;
130 struct ieee80211_tx_rate rates[4];
132 struct mt7615_rate_set rateset[2];
141 struct mt7615_vif {
142 struct mt76_vif mt76; /* must be first */
143 struct mt7615_sta sta;
147 struct mib_stats {
156 struct mt7615_phy {
157 struct mt76_phy *mt76;
158 struct mt7615_dev *dev;
160 struct ieee80211_vif *monitor_vif;
185 struct mib_stats mib;
187 struct sk_buff_head scan_event_list;
188 struct delayed_work scan_work;
190 struct work_struct roc_work;
191 struct timer_list roc_timer;
196 struct {
217 struct mt7615_mcu_ops {
218 int (*add_tx_ba)(struct mt7615_dev *dev,
219 struct ieee80211_ampdu_params *params,
221 int (*add_rx_ba)(struct mt7615_dev *dev,
222 struct ieee80211_ampdu_params *params,
224 int (*sta_add)(struct mt7615_phy *phy, struct ieee80211_vif *vif,
225 struct ieee80211_sta *sta, bool enable);
226 int (*add_dev_info)(struct mt7615_phy *phy, struct ieee80211_vif *vif,
228 int (*add_bss_info)(struct mt7615_phy *phy, struct ieee80211_vif *vif,
229 struct ieee80211_sta *sta, bool enable);
230 int (*add_beacon_offload)(struct mt7615_dev *dev,
231 struct ieee80211_hw *hw,
232 struct ieee80211_vif *vif, bool enable);
233 int (*set_pm_state)(struct mt7615_dev *dev, int band, int state);
234 int (*set_drv_ctrl)(struct mt7615_dev *dev);
235 int (*set_fw_ctrl)(struct mt7615_dev *dev);
236 int (*set_sta_decap_offload)(struct mt7615_dev *dev,
237 struct ieee80211_vif *vif,
238 struct ieee80211_sta *sta);
241 struct mt7615_dev {
243 struct mt76_dev mt76;
244 struct mt76_phy mphy;
247 const struct mt76_bus_ops *bus_ops;
248 struct mt7615_phy phy;
253 struct ieee80211_ops *ops;
254 const struct mt7615_mcu_ops *mcu_ops;
255 struct regmap *infracfg;
258 struct work_struct mcu_work;
260 struct work_struct reset_work;
264 struct {
278 struct work_struct rate_work;
279 struct list_head wrd_head;
286 struct mt76_connac_pm pm;
287 struct mt76_connac_coredump coredump;
324 static inline struct mt7615_phy *
325 mt7615_hw_phy(struct ieee80211_hw *hw) in mt7615_hw_phy()
327 struct mt76_phy *phy = hw->priv; in mt7615_hw_phy()
332 static inline struct mt7615_dev *
333 mt7615_hw_dev(struct ieee80211_hw *hw) in mt7615_hw_dev()
335 struct mt76_phy *phy = hw->priv; in mt7615_hw_dev()
337 return container_of(phy->dev, struct mt7615_dev, mt76); in mt7615_hw_dev()
340 static inline struct mt7615_phy *
341 mt7615_ext_phy(struct mt7615_dev *dev) in mt7615_ext_phy()
343 struct mt76_phy *phy = dev->mt76.phys[MT_BAND1]; in mt7615_ext_phy()
351 extern struct ieee80211_rate mt7615_rates[12];
352 extern const struct ieee80211_ops mt7615_ops;
356 extern struct pci_driver mt7615_pci_driver;
357 extern struct platform_driver mt7622_wmac_driver;
358 extern const struct mt76_testmode_ops mt7615_testmode_ops;
361 int mt7622_wmac_init(struct mt7615_dev *dev);
363 static inline int mt7622_wmac_init(struct mt7615_dev *dev) in mt7622_wmac_init()
369 int mt7615_thermal_init(struct mt7615_dev *dev);
370 int mt7615_mmio_probe(struct device *pdev, void __iomem *mem_base,
372 u32 mt7615_reg_map(struct mt7615_dev *dev, u32 addr);
374 u32 mt7615_reg_map(struct mt7615_dev *dev, u32 addr);
375 int mt7615_led_set_blink(struct led_classdev *led_cdev,
378 void mt7615_led_set_brightness(struct led_classdev *led_cdev,
380 void mt7615_init_device(struct mt7615_dev *dev);
381 int mt7615_register_device(struct mt7615_dev *dev);
382 void mt7615_unregister_device(struct mt7615_dev *dev);
383 int mt7615_register_ext_phy(struct mt7615_dev *dev);
384 void mt7615_unregister_ext_phy(struct mt7615_dev *dev);
385 int mt7615_eeprom_init(struct mt7615_dev *dev, u32 addr);
386 int mt7615_eeprom_get_target_power_index(struct mt7615_dev *dev,
387 struct ieee80211_channel *chan,
389 int mt7615_eeprom_get_power_delta_index(struct mt7615_dev *dev,
391 int mt7615_wait_pdma_busy(struct mt7615_dev *dev);
392 int mt7615_dma_init(struct mt7615_dev *dev);
393 void mt7615_dma_start(struct mt7615_dev *dev);
394 void mt7615_dma_cleanup(struct mt7615_dev *dev);
395 int mt7615_mcu_init(struct mt7615_dev *dev);
396 bool mt7615_wait_for_mcu_init(struct mt7615_dev *dev);
397 void mt7615_mac_set_rates(struct mt7615_phy *phy, struct mt7615_sta *sta,
398 struct ieee80211_tx_rate *probe_rate,
399 struct ieee80211_tx_rate *rates);
400 void mt7615_pm_wake_work(struct work_struct *work);
401 void mt7615_pm_power_save_work(struct work_struct *work);
402 int mt7615_mcu_del_wtbl_all(struct mt7615_dev *dev);
403 int mt7615_mcu_set_chan_info(struct mt7615_phy *phy, int cmd);
404 int mt7615_mcu_set_wmm(struct mt7615_dev *dev, u8 queue,
405 const struct ieee80211_tx_queue_params *params);
406 void mt7615_mcu_rx_event(struct mt7615_dev *dev, struct sk_buff *skb);
407 int mt7615_mcu_rdd_send_pattern(struct mt7615_dev *dev);
408 int mt7615_mcu_fw_log_2_host(struct mt7615_dev *dev, u8 ctrl);
410 static inline bool mt7615_firmware_offload(struct mt7615_dev *dev) in mt7615_firmware_offload()
415 static inline u16 mt7615_wtbl_size(struct mt7615_dev *dev) in mt7615_wtbl_size()
428 static inline u8 mt7615_lmac_mapping(struct mt7615_dev *dev, u8 ac) in mt7615_lmac_mapping()
443 static inline u32 mt7615_tx_mcu_int_mask(struct mt7615_dev *dev) in mt7615_tx_mcu_int_mask()
449 mt7615_get_macwork_timeout(struct mt7615_dev *dev) in mt7615_get_macwork_timeout()
454 void mt7615_dma_reset(struct mt7615_dev *dev);
455 void mt7615_scan_work(struct work_struct *work);
456 void mt7615_roc_work(struct work_struct *work);
457 void mt7615_roc_timer(struct timer_list *timer);
458 void mt7615_init_txpower(struct mt7615_dev *dev,
459 struct ieee80211_supported_band *sband);
460 int mt7615_set_channel(struct mt7615_phy *phy);
461 void mt7615_init_work(struct mt7615_dev *dev);
463 int mt7615_mcu_restart(struct mt76_dev *dev);
464 void mt7615_update_channel(struct mt76_phy *mphy);
465 bool mt7615_mac_wtbl_update(struct mt7615_dev *dev, int idx, u32 mask);
466 void mt7615_mac_reset_counters(struct mt7615_phy *phy);
467 void mt7615_mac_cca_stats_reset(struct mt7615_phy *phy);
468 void mt7615_mac_set_scs(struct mt7615_phy *phy, bool enable);
469 void mt7615_mac_enable_nf(struct mt7615_dev *dev, bool ext_phy);
470 void mt7615_mac_enable_rtscts(struct mt7615_dev *dev,
471 struct ieee80211_vif *vif, bool enable);
472 void mt7615_mac_sta_poll(struct mt7615_dev *dev);
473 int mt7615_mac_write_txwi(struct mt7615_dev *dev, __le32 *txwi,
474 struct sk_buff *skb, struct mt76_wcid *wcid,
475 struct ieee80211_sta *sta, int pid,
476 struct ieee80211_key_conf *key,
478 void mt7615_mac_set_timing(struct mt7615_phy *phy);
479 int __mt7615_mac_wtbl_set_key(struct mt7615_dev *dev,
480 struct mt76_wcid *wcid,
481 struct ieee80211_key_conf *key);
482 int mt7615_mac_wtbl_set_key(struct mt7615_dev *dev, struct mt76_wcid *wcid,
483 struct ieee80211_key_conf *key);
484 void mt7615_mac_reset_work(struct work_struct *work);
485 u32 mt7615_mac_get_sta_tid_sn(struct mt7615_dev *dev, int wcid, u8 tid);
487 int mt7615_mcu_parse_response(struct mt76_dev *mdev, int cmd,
488 struct sk_buff *skb, int seq);
489 u32 mt7615_rf_rr(struct mt7615_dev *dev, u32 wf, u32 reg);
490 int mt7615_rf_wr(struct mt7615_dev *dev, u32 wf, u32 reg, u32 val);
491 int mt7615_mcu_set_dbdc(struct mt7615_dev *dev);
492 int mt7615_mcu_set_eeprom(struct mt7615_dev *dev);
493 int mt7615_mcu_get_temperature(struct mt7615_dev *dev);
494 int mt7615_mcu_set_tx_power(struct mt7615_phy *phy);
495 void mt7615_mcu_exit(struct mt7615_dev *dev);
496 void mt7615_mcu_fill_msg(struct mt7615_dev *dev, struct sk_buff *skb,
499 int mt7615_tx_prepare_skb(struct mt76_dev *mdev, void *txwi_ptr,
500 enum mt76_txq_id qid, struct mt76_wcid *wcid,
501 struct ieee80211_sta *sta,
502 struct mt76_tx_info *tx_info);
504 void mt7615_tx_worker(struct mt76_worker *w);
505 void mt7615_tx_token_put(struct mt7615_dev *dev);
506 bool mt7615_rx_check(struct mt76_dev *mdev, void *data, int len);
507 void mt7615_queue_rx_skb(struct mt76_dev *mdev, enum mt76_rxq_id q,
508 struct sk_buff *skb, u32 *info);
509 int mt7615_mac_sta_add(struct mt76_dev *mdev, struct ieee80211_vif *vif,
510 struct ieee80211_sta *sta);
511 void mt7615_mac_sta_remove(struct mt76_dev *mdev, struct ieee80211_vif *vif,
512 struct ieee80211_sta *sta);
513 void mt7615_mac_work(struct work_struct *work);
514 int mt7615_mcu_set_rx_hdr_trans_blacklist(struct mt7615_dev *dev);
515 int mt7615_mcu_set_fcc5_lpn(struct mt7615_dev *dev, int val);
516 int mt7615_mcu_set_pulse_th(struct mt7615_dev *dev,
517 const struct mt7615_dfs_pulse *pulse);
518 int mt7615_mcu_set_radar_th(struct mt7615_dev *dev, int index,
519 const struct mt7615_dfs_pattern *pattern);
520 int mt7615_mcu_set_test_param(struct mt7615_dev *dev, u8 param, bool test_mode,
522 int mt7615_mcu_set_sku_en(struct mt7615_phy *phy, bool enable);
523 int mt7615_mcu_apply_rx_dcoc(struct mt7615_phy *phy);
524 int mt7615_mcu_apply_tx_dpd(struct mt7615_phy *phy);
525 int mt7615_dfs_init_radar_detector(struct mt7615_phy *phy);
527 int mt7615_mcu_set_roc(struct mt7615_phy *phy, struct ieee80211_vif *vif,
528 struct ieee80211_channel *chan, int duration);
530 int mt7615_init_debugfs(struct mt7615_dev *dev);
531 int mt7615_mcu_wait_response(struct mt7615_dev *dev, int cmd, int seq);
533 int mt7615_mac_set_beacon_filter(struct mt7615_phy *phy,
534 struct ieee80211_vif *vif,
536 int mt7615_mcu_set_bss_pm(struct mt7615_dev *dev, struct ieee80211_vif *vif,
538 int __mt7663_load_firmware(struct mt7615_dev *dev);
539 void mt7615_coredump_work(struct work_struct *work);
541 void mt7622_trigger_hif_int(struct mt7615_dev *dev, bool en);
544 int mt7663_usb_sdio_tx_prepare_skb(struct mt76_dev *mdev, void *txwi_ptr,
545 enum mt76_txq_id qid, struct mt76_wcid *wcid,
546 struct ieee80211_sta *sta,
547 struct mt76_tx_info *tx_info);
548 bool mt7663_usb_sdio_tx_status_data(struct mt76_dev *mdev, u8 *update);
549 void mt7663_usb_sdio_tx_complete_skb(struct mt76_dev *mdev,
550 struct mt76_queue_entry *e);
551 int mt7663_usb_sdio_register_device(struct mt7615_dev *dev);
552 int mt7663u_mcu_init(struct mt7615_dev *dev);
553 int mt7663u_mcu_power_on(struct mt7615_dev *dev);
556 int mt7663s_mcu_init(struct mt7615_dev *dev);