diff --git a/eeprom.c b/eeprom.c index b3229aa5..530e5593 100644 --- a/eeprom.c +++ b/eeprom.c @@ -97,6 +97,7 @@ mt76_eeprom_override(struct mt76_dev *dev) dev->macaddr); } } +EXPORT_SYMBOL_GPL(mt76_eeprom_override); int mt76_eeprom_init(struct mt76_dev *dev, int len) diff --git a/mac80211.c b/mac80211.c index fb2427b8..c757254c 100644 --- a/mac80211.c +++ b/mac80211.c @@ -206,8 +206,6 @@ int mt76_register_device(struct mt76_dev *dev, bool vht, spin_lock_init(&dev->cc_lock); INIT_LIST_HEAD(&dev->txwi_cache); - mt76_eeprom_override(dev); - SET_IEEE80211_DEV(hw, dev->dev); SET_IEEE80211_PERM_ADDR(hw, dev->macaddr); diff --git a/mt76.h b/mt76.h index 0ca6fcb8..f94f78a8 100644 --- a/mt76.h +++ b/mt76.h @@ -314,6 +314,7 @@ void mt76_unregister_device(struct mt76_dev *dev); struct dentry *mt76_register_debugfs(struct mt76_dev *dev); int mt76_eeprom_init(struct mt76_dev *dev, int len); +void mt76_eeprom_override(struct mt76_dev *dev); static inline struct ieee80211_txq * mtxq_to_txq(struct mt76_txq *mtxq) @@ -350,6 +351,5 @@ int mt76_get_survey(struct ieee80211_hw *hw, int idx, void mt76_tx_free(struct mt76_dev *dev); void mt76_put_txwi(struct mt76_dev *dev, struct mt76_txwi_cache *t); void mt76_rx_complete(struct mt76_dev *dev, enum mt76_rxq_id q); -void mt76_eeprom_override(struct mt76_dev *dev); #endif diff --git a/mt7603_eeprom.c b/mt7603_eeprom.c index 5e95d15d..79dbd224 100644 --- a/mt7603_eeprom.c +++ b/mt7603_eeprom.c @@ -157,6 +157,7 @@ int mt7603_eeprom_init(struct mt7603_dev *dev) ETH_ALEN); mt7603_apply_cal_free_data(dev, dev->mt76.otp.data); + mt76_eeprom_override(&dev->mt76); return 0; } diff --git a/mt76x2_eeprom.c b/mt76x2_eeprom.c index ed2151c0..bbfcd361 100644 --- a/mt76x2_eeprom.c +++ b/mt76x2_eeprom.c @@ -637,6 +637,7 @@ int mt76x2_eeprom_init(struct mt76x2_dev *dev) mt76x2_eeprom_parse_hw_cap(dev); mt76x2_eeprom_get_macaddr(dev); + mt76_eeprom_override(&dev->mt76); dev->mt76.macaddr[0] &= ~BIT(1); return 0;