On 10/01/2020, Kalle Valo <kvalo@xxxxxxxxxxxxxx> wrote: > Denis Kalashnikov <denis281089@xxxxxxxxx> writes: > >> Some of the Mikrotik R11e-2HPnD cards have EEPROM where is >> flashed that a card has 3 chains, but actually all this cards >> have only 2. This leads ath9k to write periodically into the logs: >> 'ath: phy0: Unable to reset channel, reset status -5' and >> stations don't see that AP. >> >> Mikrotik R11e-2HPnD is based on AR9582 chip. >> >> Signed-off-by: Denis Kalashnikov <denis281089@xxxxxxxxx> >> --- >> drivers/net/wireless/ath/ath9k/ar9003_eeprom.c | 9 +++++++++ >> 1 file changed, 9 insertions(+) >> >> diff --git a/drivers/net/wireless/ath/ath9k/ar9003_eeprom.c >> b/drivers/net/wireless/ath/ath9k/ar9003_eeprom.c >> index b4885a700296..554a81400648 100644 >> --- a/drivers/net/wireless/ath/ath9k/ar9003_eeprom.c >> +++ b/drivers/net/wireless/ath/ath9k/ar9003_eeprom.c >> @@ -3373,6 +3373,15 @@ static int >> ar9300_eeprom_restore_internal(struct ath_hw *ah, >> cptr -= (COMP_HDR_LEN + osize + COMP_CKSUM_LEN); >> } >> >> + /** >> + * Fix firmware bug of some Mikrotik R11e-2HPnD cards (based on >> AR9582) >> + * that claim that they have 3 chains, but actually have only 2. >> + */ >> + if (AR_SREV_9580(ah)) { >> + eep = (struct ar9300_eeprom *)mptr; >> + eep->baseEepHeader.txrxMask &= 0x33; >> + } > > What about 9580 devices which really have 3 chains, doesn't this broke > those? Or is such setup impossible? > > -- > https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches > See this: https://openwrt.org/_media/media/tplink/tl-wdr4310/tl-wdr4310_11.jpg This commit would definitely break it. The fix should involve PCI sub id of the miktrotik card