ar5416.h (234873) | ar5416.h (237611) |
---|---|
1/* 2 * Copyright (c) 2002-2009 Sam Leffler, Errno Consulting 3 * Copyright (c) 2002-2008 Atheros Communications, Inc. 4 * 5 * Permission to use, copy, modify, and/or distribute this software for any 6 * purpose with or without fee is hereby granted, provided that the above 7 * copyright notice and this permission notice appear in all copies. 8 * 9 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 10 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 11 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 12 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 13 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 14 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 15 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 16 * | 1/* 2 * Copyright (c) 2002-2009 Sam Leffler, Errno Consulting 3 * Copyright (c) 2002-2008 Atheros Communications, Inc. 4 * 5 * Permission to use, copy, modify, and/or distribute this software for any 6 * purpose with or without fee is hereby granted, provided that the above 7 * copyright notice and this permission notice appear in all copies. 8 * 9 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 10 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 11 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 12 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 13 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 14 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 15 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 16 * |
17 * $FreeBSD: head/sys/dev/ath/ath_hal/ar5416/ar5416.h 234873 2012-05-01 14:48:51Z adrian $ | 17 * $FreeBSD: head/sys/dev/ath/ath_hal/ar5416/ar5416.h 237611 2012-06-26 22:16:53Z adrian $ |
18 */ 19#ifndef _ATH_AR5416_H_ 20#define _ATH_AR5416_H_ 21 22#include "ar5212/ar5212.h" 23#include "ar5416_cal.h" 24#include "ah_eeprom_v14.h" /* for CAL_TARGET_POWER_* */ 25 --- 101 unchanged lines hidden (view full) --- 127 struct ar5416PerCal ah_cal; /* periodic calibration state */ 128 129 struct ar5416NfLimits nf_2g; 130 struct ar5416NfLimits nf_5g; 131 132 int initPDADC; 133 134 int ah_need_an_top2_fixup; /* merlin or later chips that may need this workaround */ | 18 */ 19#ifndef _ATH_AR5416_H_ 20#define _ATH_AR5416_H_ 21 22#include "ar5212/ar5212.h" 23#include "ar5416_cal.h" 24#include "ah_eeprom_v14.h" /* for CAL_TARGET_POWER_* */ 25 --- 101 unchanged lines hidden (view full) --- 127 struct ar5416PerCal ah_cal; /* periodic calibration state */ 128 129 struct ar5416NfLimits nf_2g; 130 struct ar5416NfLimits nf_5g; 131 132 int initPDADC; 133 134 int ah_need_an_top2_fixup; /* merlin or later chips that may need this workaround */ |
135 136 /* 137 * Bluetooth coexistence static setup according to the registry 138 */ 139 HAL_BT_MODULE ah_btModule; /* Bluetooth module identifier */ 140 uint8_t ah_btCoexConfigType; /* BT coex configuration */ 141 uint8_t ah_btActiveGpioSelect; /* GPIO pin for BT_ACTIVE */ 142 uint8_t ah_btPriorityGpioSelect; /* GPIO pin for BT_PRIORITY */ 143 uint8_t ah_wlanActiveGpioSelect; /* GPIO pin for WLAN_ACTIVE */ 144 uint8_t ah_btActivePolarity; /* Polarity of BT_ACTIVE */ 145 HAL_BOOL ah_btCoexSingleAnt; /* Single or dual antenna configuration */ 146 uint8_t ah_btWlanIsolation; /* Isolation between BT and WLAN in dB */ 147 148 /* 149 * Bluetooth coexistence runtime settings 150 */ 151 HAL_BOOL ah_btCoexEnabled; /* If Bluetooth coexistence is enabled */ 152 uint32_t ah_btCoexMode; /* Register setting for AR_BT_COEX_MODE */ 153 uint32_t ah_btCoexBTWeight; /* Register setting for AR_BT_COEX_WEIGHT */ 154 uint32_t ah_btCoexWLANWeight; /* Register setting for AR_BT_COEX_WEIGHT */ 155 uint32_t ah_btCoexMode2; /* Register setting for AR_BT_COEX_MODE2 */ 156 uint32_t ah_btCoexFlag; /* Special tuning flags for BT coex */ |
|
135}; 136#define AH5416(_ah) ((struct ath_hal_5416 *)(_ah)) 137 138#define IS_5416_PCI(ah) ((AH_PRIVATE(ah)->ah_macVersion) == AR_SREV_VERSION_OWL_PCI) 139#define IS_5416_PCIE(ah) ((AH_PRIVATE(ah)->ah_macVersion) == AR_SREV_VERSION_OWL_PCIE) 140#undef IS_PCIE 141#define IS_PCIE(ah) (IS_5416_PCIE(ah)) 142 --- 25 unchanged lines hidden (view full) --- 168extern void ar5416SetBeaconTimers(struct ath_hal *, const HAL_BEACON_TIMERS *); 169extern void ar5416BeaconInit(struct ath_hal *ah, 170 uint32_t next_beacon, uint32_t beacon_period); 171extern void ar5416ResetStaBeaconTimers(struct ath_hal *ah); 172extern void ar5416SetStaBeaconTimers(struct ath_hal *ah, 173 const HAL_BEACON_STATE *); 174extern uint64_t ar5416GetNextTBTT(struct ath_hal *); 175 | 157}; 158#define AH5416(_ah) ((struct ath_hal_5416 *)(_ah)) 159 160#define IS_5416_PCI(ah) ((AH_PRIVATE(ah)->ah_macVersion) == AR_SREV_VERSION_OWL_PCI) 161#define IS_5416_PCIE(ah) ((AH_PRIVATE(ah)->ah_macVersion) == AR_SREV_VERSION_OWL_PCIE) 162#undef IS_PCIE 163#define IS_PCIE(ah) (IS_5416_PCIE(ah)) 164 --- 25 unchanged lines hidden (view full) --- 190extern void ar5416SetBeaconTimers(struct ath_hal *, const HAL_BEACON_TIMERS *); 191extern void ar5416BeaconInit(struct ath_hal *ah, 192 uint32_t next_beacon, uint32_t beacon_period); 193extern void ar5416ResetStaBeaconTimers(struct ath_hal *ah); 194extern void ar5416SetStaBeaconTimers(struct ath_hal *ah, 195 const HAL_BEACON_STATE *); 196extern uint64_t ar5416GetNextTBTT(struct ath_hal *); 197 |
198/* ar5416_btcoex.c */ 199extern void ar5416SetBTCoexInfo(struct ath_hal *ah, 200 HAL_BT_COEX_INFO *btinfo); 201extern void ar5416BTCoexConfig(struct ath_hal *ah, 202 HAL_BT_COEX_CONFIG *btconf); 203extern void ar5416BTCoexSetQcuThresh(struct ath_hal *ah, int qnum); 204extern void ar5416BTCoexSetWeights(struct ath_hal *ah, uint32_t stompType); 205extern void ar5416BTCoexSetupBmissThresh(struct ath_hal *ah, 206 uint32_t thresh); 207extern void ar5416BTCoexSetParameter(struct ath_hal *ah, uint32_t type, 208 uint32_t value); 209extern void ar5416BTCoexDisable(struct ath_hal *ah); 210extern int ar5416BTCoexEnable(struct ath_hal *ah); 211extern void ar5416InitBTCoex(struct ath_hal *ah); 212 |
|
176extern HAL_BOOL ar5416EepromRead(struct ath_hal *, u_int off, uint16_t *data); 177extern HAL_BOOL ar5416EepromWrite(struct ath_hal *, u_int off, uint16_t data); 178 179extern HAL_BOOL ar5416IsInterruptPending(struct ath_hal *ah); 180extern HAL_BOOL ar5416GetPendingInterrupts(struct ath_hal *, HAL_INT *masked); 181extern HAL_INT ar5416SetInterrupts(struct ath_hal *ah, HAL_INT ints); 182 183extern HAL_BOOL ar5416GpioCfgOutput(struct ath_hal *, uint32_t gpio, --- 179 unchanged lines hidden --- | 213extern HAL_BOOL ar5416EepromRead(struct ath_hal *, u_int off, uint16_t *data); 214extern HAL_BOOL ar5416EepromWrite(struct ath_hal *, u_int off, uint16_t data); 215 216extern HAL_BOOL ar5416IsInterruptPending(struct ath_hal *ah); 217extern HAL_BOOL ar5416GetPendingInterrupts(struct ath_hal *, HAL_INT *masked); 218extern HAL_INT ar5416SetInterrupts(struct ath_hal *ah, HAL_INT ints); 219 220extern HAL_BOOL ar5416GpioCfgOutput(struct ath_hal *, uint32_t gpio, --- 179 unchanged lines hidden --- |