Introduce hardware PS-POLL support in the HAL.
Linux ath9k only enables this for AR9280 and later NICs; so create a capability for it so it isn't enabled for earlier NICs. Enabling hardware PS-POLL support will come in a later commit and will be disabled by default.
This commit is contained in:
parent
7a5ef72838
commit
66cc5279f5
@ -599,8 +599,10 @@ ath_hal_getcapability(struct ath_hal *ah, HAL_CAPABILITY_TYPE type,
|
||||
default:
|
||||
return HAL_ENOTSUPP;
|
||||
}
|
||||
case HAP_CAP_SPLIT_4KB_TRANS: /* hardware handles descriptors straddling 4k page boundary */
|
||||
case HAL_CAP_SPLIT_4KB_TRANS: /* hardware handles descriptors straddling 4k page boundary */
|
||||
return pCap->hal4kbSplitTransSupport ? HAL_OK : HAL_ENOTSUPP;
|
||||
case HAL_CAP_HAS_PSPOLL: /* hardware has ps-poll support */
|
||||
return pCap->halHasPsPollSupport ? HAL_OK : HAL_ENOTSUPP;
|
||||
default:
|
||||
return HAL_EINVAL;
|
||||
}
|
||||
|
@ -780,6 +780,8 @@ ar9280FillCapabilityInfo(struct ath_hal *ah)
|
||||
#endif
|
||||
pCap->halAutoSleepSupport = AH_FALSE; /* XXX? */
|
||||
pCap->hal4kbSplitTransSupport = AH_FALSE;
|
||||
if (AR_SREV_MERLIN_20_OR_LATER(ah))
|
||||
pCap->halHasPsPollSupport = AH_TRUE;
|
||||
pCap->halRxStbcSupport = 1;
|
||||
pCap->halTxStbcSupport = 1;
|
||||
|
||||
|
@ -380,6 +380,9 @@ ar9285FillCapabilityInfo(struct ath_hal *ah)
|
||||
#endif
|
||||
pCap->halAutoSleepSupport = AH_FALSE; /* XXX? */
|
||||
pCap->hal4kbSplitTransSupport = AH_FALSE;
|
||||
if (AR_SREV_KITE_12_OR_LATER(ah))
|
||||
pCap->halHasPsPollSupport = AH_TRUE;
|
||||
|
||||
pCap->halRxStbcSupport = 1;
|
||||
pCap->halTxStbcSupport = 1;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user