|
@@ -627,6 +627,23 @@ static bool ath9k_hw_devid_supported(u16 devid)
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
+static bool ath9k_hw_macversion_supported(u32 macversion)
|
|
|
+{
|
|
|
+ switch (macversion) {
|
|
|
+ case AR_SREV_VERSION_5416_PCI:
|
|
|
+ case AR_SREV_VERSION_5416_PCIE:
|
|
|
+ case AR_SREV_VERSION_9160:
|
|
|
+ case AR_SREV_VERSION_9100:
|
|
|
+ case AR_SREV_VERSION_9280:
|
|
|
+ case AR_SREV_VERSION_9285:
|
|
|
+ case AR_SREV_VERSION_9287:
|
|
|
+ return true;
|
|
|
+ default:
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ return false;
|
|
|
+}
|
|
|
+
|
|
|
int ath9k_hw_attach(struct ath_hw *ah)
|
|
|
{
|
|
|
int r;
|
|
@@ -666,16 +683,7 @@ int ath9k_hw_attach(struct ath_hw *ah)
|
|
|
DPRINTF(ah->ah_sc, ATH_DBG_RESET, "serialize_regmode is %d\n",
|
|
|
ah->config.serialize_regmode);
|
|
|
|
|
|
- switch (ah->hw_version.macVersion) {
|
|
|
- case AR_SREV_VERSION_5416_PCI:
|
|
|
- case AR_SREV_VERSION_5416_PCIE:
|
|
|
- case AR_SREV_VERSION_9160:
|
|
|
- case AR_SREV_VERSION_9100:
|
|
|
- case AR_SREV_VERSION_9280:
|
|
|
- case AR_SREV_VERSION_9285:
|
|
|
- case AR_SREV_VERSION_9287:
|
|
|
- break;
|
|
|
- default:
|
|
|
+ if (!ath9k_hw_macversion_supported(ah->hw_version.macVersion)) {
|
|
|
DPRINTF(ah->ah_sc, ATH_DBG_FATAL,
|
|
|
"Mac Chip Rev 0x%02x.%x is not supported by "
|
|
|
"this driver\n", ah->hw_version.macVersion,
|