Hi Ryder, I love your patch! Perhaps something to improve: [auto build test WARNING on wireless-drivers-next/master] [also build test WARNING on next-20201209] [cannot apply to wireless-drivers/master v5.10-rc7] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch] url: https://github.com/0day-ci/linux/commits/Ryder-Lee/mt76-mt7915-reset-token-when-mac_reset-happens/20201210-043355 base: https://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers-next.git master config: parisc-randconfig-r033-20201209 (attached as .config) compiler: hppa-linux-gcc (GCC) 9.3.0 reproduce (this is a W=1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # https://github.com/0day-ci/linux/commit/34bdad124ca0fd65c4660ec70254e5dd16f03385 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Ryder-Lee/mt76-mt7915-reset-token-when-mac_reset-happens/20201210-043355 git checkout 34bdad124ca0fd65c4660ec70254e5dd16f03385 # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=parisc If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot All warnings (new ones prefixed by >>): In file included from drivers/net/wireless/mediatek/mt76/mt7615/main.c:12: >> drivers/net/wireless/mediatek/mt76/mt7615/mt7615.h:586:33: warning: 'struct mt7915_dev' declared inside parameter list will not be visible outside of this definition or declaration 586 | void mt7615_tx_token_put(struct mt7915_dev *dev); | ^~~~~~~~~~ -- In file included from drivers/net/wireless/mediatek/mt76/mt7615/mcu.c:9: >> drivers/net/wireless/mediatek/mt76/mt7615/mt7615.h:586:33: warning: 'struct mt7915_dev' declared inside parameter list will not be visible outside of this definition or declaration 586 | void mt7615_tx_token_put(struct mt7915_dev *dev); | ^~~~~~~~~~ drivers/net/wireless/mediatek/mt76/mt7615/mcu.c:2078:42: warning: 'mt7615_wowlan_support' defined but not used [-Wunused-const-variable=] 2078 | static const struct wiphy_wowlan_support mt7615_wowlan_support = { | ^~~~~~~~~~~~~~~~~~~~~ -- In file included from drivers/net/wireless/mediatek/mt76/mt7615/mt7615_trace.h:10, from drivers/net/wireless/mediatek/mt76/mt7615/trace.c:10: >> drivers/net/wireless/mediatek/mt76/mt7615/mt7615.h:586:33: warning: 'struct mt7915_dev' declared inside parameter list will not be visible outside of this definition or declaration 586 | void mt7615_tx_token_put(struct mt7915_dev *dev); | ^~~~~~~~~~ In file included from drivers/net/wireless/mediatek/mt76/mt7615/mt7615_trace.h:56, from drivers/net/wireless/mediatek/mt76/mt7615/trace.c:10: include/trace/define_trace.h:95:42: fatal error: ./mt7615_trace.h: No such file or directory 95 | #include TRACE_INCLUDE(TRACE_INCLUDE_FILE) | ^ compilation terminated. -- In file included from drivers/net/wireless/mediatek/mt76/mt7615/mac.c:12: >> drivers/net/wireless/mediatek/mt76/mt7615/mt7615.h:586:33: warning: 'struct mt7915_dev' declared inside parameter list will not be visible outside of this definition or declaration 586 | void mt7615_tx_token_put(struct mt7915_dev *dev); | ^~~~~~~~~~ drivers/net/wireless/mediatek/mt76/mt7615/mac.c:2061:6: error: conflicting types for 'mt7615_tx_token_put' 2061 | void mt7615_tx_token_put(struct mt7615_dev *dev) | ^~~~~~~~~~~~~~~~~~~ In file included from drivers/net/wireless/mediatek/mt76/mt7615/mac.c:12: drivers/net/wireless/mediatek/mt76/mt7615/mt7615.h:586:6: note: previous declaration of 'mt7615_tx_token_put' was here 586 | void mt7615_tx_token_put(struct mt7915_dev *dev); | ^~~~~~~~~~~~~~~~~~~ -- In file included from drivers/net/wireless/mediatek/mt76/mt7615/pci_init.c:11: >> drivers/net/wireless/mediatek/mt76/mt7615/mt7615.h:586:33: warning: 'struct mt7915_dev' declared inside parameter list will not be visible outside of this definition or declaration 586 | void mt7615_tx_token_put(struct mt7915_dev *dev); | ^~~~~~~~~~ drivers/net/wireless/mediatek/mt76/mt7615/pci_init.c: In function 'mt7615_unregister_device': drivers/net/wireless/mediatek/mt76/mt7615/pci_init.c:173:22: error: passing argument 1 of 'mt7615_tx_token_put' from incompatible pointer type [-Werror=incompatible-pointer-types] 173 | mt7615_tx_token_put(dev); | ^~~ | | | struct mt7615_dev * In file included from drivers/net/wireless/mediatek/mt76/mt7615/pci_init.c:11: drivers/net/wireless/mediatek/mt76/mt7615/mt7615.h:586:45: note: expected 'struct mt7915_dev *' but argument is of type 'struct mt7615_dev *' 586 | void mt7615_tx_token_put(struct mt7915_dev *dev); | ~~~~~~~~~~~~~~~~~~~^~~ cc1: some warnings being treated as errors vim +586 drivers/net/wireless/mediatek/mt76/mt7615/mt7615.h 554 555 int mt7615_mcu_parse_response(struct mt76_dev *mdev, int cmd, 556 struct sk_buff *skb, int seq); 557 u32 mt7615_rf_rr(struct mt7615_dev *dev, u32 wf, u32 reg); 558 int mt7615_rf_wr(struct mt7615_dev *dev, u32 wf, u32 reg, u32 val); 559 int mt7615_mcu_set_dbdc(struct mt7615_dev *dev); 560 int mt7615_mcu_set_eeprom(struct mt7615_dev *dev); 561 int mt7615_mcu_set_mac_enable(struct mt7615_dev *dev, int band, bool enable); 562 int mt7615_mcu_set_rts_thresh(struct mt7615_phy *phy, u32 val); 563 int mt7615_mcu_get_temperature(struct mt7615_dev *dev, int index); 564 int mt7615_mcu_set_tx_power(struct mt7615_phy *phy); 565 void mt7615_mcu_exit(struct mt7615_dev *dev); 566 void mt7615_mcu_fill_msg(struct mt7615_dev *dev, struct sk_buff *skb, 567 int cmd, int *wait_seq); 568 int mt7615_mcu_set_channel_domain(struct mt7615_phy *phy); 569 int mt7615_mcu_hw_scan(struct mt7615_phy *phy, struct ieee80211_vif *vif, 570 struct ieee80211_scan_request *scan_req); 571 int mt7615_mcu_cancel_hw_scan(struct mt7615_phy *phy, 572 struct ieee80211_vif *vif); 573 int mt7615_mcu_sched_scan_req(struct mt7615_phy *phy, 574 struct ieee80211_vif *vif, 575 struct cfg80211_sched_scan_request *sreq); 576 int mt7615_mcu_sched_scan_enable(struct mt7615_phy *phy, 577 struct ieee80211_vif *vif, 578 bool enable); 579 580 int mt7615_tx_prepare_skb(struct mt76_dev *mdev, void *txwi_ptr, 581 enum mt76_txq_id qid, struct mt76_wcid *wcid, 582 struct ieee80211_sta *sta, 583 struct mt76_tx_info *tx_info); 584 585 void mt7615_tx_complete_skb(struct mt76_dev *mdev, struct mt76_queue_entry *e); > 586 void mt7615_tx_token_put(struct mt7915_dev *dev); 587 void mt7615_queue_rx_skb(struct mt76_dev *mdev, enum mt76_rxq_id q, 588 struct sk_buff *skb); 589 void mt7615_sta_ps(struct mt76_dev *mdev, struct ieee80211_sta *sta, bool ps); 590 int mt7615_mac_sta_add(struct mt76_dev *mdev, struct ieee80211_vif *vif, 591 struct ieee80211_sta *sta); 592 void mt7615_mac_sta_remove(struct mt76_dev *mdev, struct ieee80211_vif *vif, 593 struct ieee80211_sta *sta); 594 void mt7615_mac_work(struct work_struct *work); 595 void mt7615_txp_skb_unmap(struct mt76_dev *dev, 596 struct mt76_txwi_cache *txwi); 597 int mt7615_mcu_set_fcc5_lpn(struct mt7615_dev *dev, int val); 598 int mt7615_mcu_set_pulse_th(struct mt7615_dev *dev, 599 const struct mt7615_dfs_pulse *pulse); 600 int mt7615_mcu_set_radar_th(struct mt7615_dev *dev, int index, 601 const struct mt7615_dfs_pattern *pattern); 602 int mt7615_mcu_set_test_param(struct mt7615_dev *dev, u8 param, bool test_mode, 603 u32 val); 604 int mt7615_mcu_set_sku_en(struct mt7615_phy *phy, bool enable); 605 int mt7615_mcu_apply_rx_dcoc(struct mt7615_phy *phy); 606 int mt7615_mcu_apply_tx_dpd(struct mt7615_phy *phy); 607 int mt7615_mcu_set_vif_ps(struct mt7615_dev *dev, struct ieee80211_vif *vif); 608 int mt7615_dfs_init_radar_detector(struct mt7615_phy *phy); 609 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org