• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-12-stable/sys/dev/ath/ath_hal/ar5416/

Lines Matching defs:ah

25 #include "ah.h"
39 ar5416SetBTCoexInfo(struct ath_hal *ah, HAL_BT_COEX_INFO *btinfo)
41 struct ath_hal_5416 *ahp = AH5416(ah);
54 ar5416BTCoexConfig(struct ath_hal *ah, HAL_BT_COEX_CONFIG *btconf)
56 struct ath_hal_5416 *ahp = AH5416(ah);
63 if (AR_SREV_KIWI(ah)) {
87 ar5416BTCoexSetQcuThresh(struct ath_hal *ah, int qnum)
89 struct ath_hal_5416 *ahp = AH5416(ah);
95 ar5416BTCoexSetWeights(struct ath_hal *ah, u_int32_t stompType)
97 struct ath_hal_5416 *ahp = AH5416(ah);
99 if (AR_SREV_KIWI_10_OR_LATER(ah)) {
170 ar5416BTCoexSetupBmissThresh(struct ath_hal *ah, u_int32_t thresh)
172 struct ath_hal_5416 *ahp = AH5416(ah);
183 ar5416BTCoexAntennaDiversity(struct ath_hal *ah)
188 ar5416BTCoexSetParameter(struct ath_hal *ah, u_int32_t type, u_int32_t value)
190 struct ath_hal_5416 *ahp = AH5416(ah);
196 OS_REG_WRITE(ah, AR_TPC, HAL_BT_COEX_LOW_ACK_POWER);
199 OS_REG_WRITE(ah, AR_TPC, HAL_BT_COEX_HIGH_ACK_POWER);
210 AH_PRIVATE(ah)->ah_config.ath_hal_desc_tpc = 1;
211 ar5416SetTxPowerLimit(ah, AH_PRIVATE(ah)->ah_power_limit, AH_PRIVATE(ah)->ah_extra_txpow, 0);
217 AH_PRIVATE(ah)->ah_config.ath_hal_desc_tpc = 0;
218 ar5416SetTxPowerLimit(ah, AH_PRIVATE(ah)->ah_power_limit, AH_PRIVATE(ah)->ah_extra_txpow, 0);
229 ar5416BTCoexDisable(struct ath_hal *ah)
231 struct ath_hal_5416 *ahp = AH5416(ah);
234 ar5416GpioSet(ah, ahp->ah_wlanActiveGpioSelect, 0);
235 ar5416GpioCfgOutput(ah, ahp->ah_wlanActiveGpioSelect,
238 if (AR_SREV_9271(ah)) {
243 ar5416GpioCfgInput(ah, ahp->ah_wlanActiveGpioSelect);
247 OS_REG_RMW_FIELD(ah, AR_QUIET1, AR_QUIET1_QUIET_ACK_CTS_ENABLE,
249 OS_REG_RMW_FIELD(ah, AR_MISC_MODE, AR_PCU_BT_ANT_PREVENT_RX,
253 OS_REG_WRITE(ah, AR_BT_COEX_MODE, AR_BT_QUIET | AR_BT_MODE);
254 OS_REG_WRITE(ah, AR_BT_COEX_WEIGHT, 0);
255 if (AR_SREV_KIWI_10_OR_LATER(ah))
256 OS_REG_WRITE(ah, AR_BT_COEX_WEIGHT2, 0);
257 OS_REG_WRITE(ah, AR_BT_COEX_MODE2, 0);
263 ar5416BTCoexEnable(struct ath_hal *ah)
265 struct ath_hal_5416 *ahp = AH5416(ah);
268 OS_REG_WRITE(ah, AR_BT_COEX_MODE, ahp->ah_btCoexMode);
269 OS_REG_WRITE(ah, AR_BT_COEX_WEIGHT,
272 if (AR_SREV_KIWI_10_OR_LATER(ah)) {
273 OS_REG_WRITE(ah, AR_BT_COEX_WEIGHT2,
276 OS_REG_WRITE(ah, AR_BT_COEX_MODE2, ahp->ah_btCoexMode2);
279 if (AR_SREV_9271(ah)) {
282 val = OS_REG_READ(ah, AR9271_CLOCK_CONTROL);
284 OS_REG_WRITE(ah, AR9271_CLOCK_CONTROL, val);
288 OS_REG_WRITE(ah, AR_TPC, HAL_BT_COEX_LOW_ACK_POWER);
290 OS_REG_WRITE(ah, AR_TPC, HAL_BT_COEX_HIGH_ACK_POWER);
293 OS_REG_RMW_FIELD(ah, AR_QUIET1,
296 OS_REG_RMW_FIELD(ah, AR_MISC_MODE,
299 OS_REG_RMW_FIELD(ah, AR_QUIET1,
302 OS_REG_RMW_FIELD(ah, AR_MISC_MODE,
308 ar5416GpioCfgOutput(ah, ahp->ah_wlanActiveGpioSelect,
315 ar5416GpioCfgOutput(ah, ahp->ah_wlanActiveGpioSelect,
323 OS_REG_RMW(ah, AR_GPIO_PDPU,
333 ar5416InitBTCoex(struct ath_hal *ah)
335 struct ath_hal_5416 *ahp = AH5416(ah);
337 HALDEBUG(ah, HAL_DEBUG_BT_COEX,
343 OS_REG_SET_BIT(ah, AR_GPIO_INPUT_EN_VAL,
351 OS_REG_RMW_FIELD(ah, AR_GPIO_INPUT_MUX1,
354 OS_REG_RMW_FIELD(ah, AR_GPIO_INPUT_MUX1,
361 ar5416GpioCfgInput(ah, ahp->ah_btActiveGpioSelect);
362 ar5416GpioCfgInput(ah, ahp->ah_btPriorityGpioSelect);
369 AH5416(ah)->ah_btCoexSetDiversity(ah);
372 ar5416BTCoexEnable(ah);
374 ar5416BTCoexDisable(ah);
379 OS_REG_CLR_BIT(ah, AR_GPIO_INPUT_EN_VAL,
382 OS_REG_SET_BIT(ah, AR_GPIO_INPUT_EN_VAL,
389 OS_REG_RMW_FIELD(ah, AR_GPIO_INPUT_MUX1,
394 ar5416GpioCfgInput(ah, ahp->ah_btActiveGpioSelect);
397 ar5416BTCoexEnable(ah);