FreeBSD kernel ATH device code
|
#include "opt_ah.h"
#include "ah.h"
#include "ah_internal.h"
#include "ah_eeprom_v3.h"
#include "ar5212/ar5212.h"
#include "ar5212/ar5212reg.h"
#include "ar5212/ar5212phy.h"
#include "ar5212/ar5212.ini"
Go to the source code of this file.
Data Structures | |
struct | ar5413State |
Macros | |
#define | AH_5212_5413 |
#define | N(a) (sizeof(a)/sizeof(a[0])) |
#define | AR5413(ah) ((struct ar5413State *) AH5212(ah)->ah_rfHal) |
#define | RF_BANK_SETUP(_priv, _ix, _col) |
#define | VpdTable_L priv->vpdTable_L |
#define | VpdTable_R priv->vpdTable_R |
#define | VpdTable_I priv->vpdTable_I |
Functions | |
void | ar5212ModifyRfBuffer (uint32_t *rfBuf, uint32_t reg32, uint32_t numBits, uint32_t firstBit, uint32_t column) |
static void | ar5413WriteRegs (struct ath_hal *ah, u_int modesIndex, u_int freqIndex, int writes) |
static HAL_BOOL | ar5413SetChannel (struct ath_hal *ah, const struct ieee80211_channel *chan) |
static HAL_BOOL | ar5413SetRfRegs (struct ath_hal *ah, const struct ieee80211_channel *chan, uint16_t modesIndex, uint16_t *rfXpdGain) |
static uint32_t * | ar5413GetRfBank (struct ath_hal *ah, int bank) |
static void | GetLowerUpperIndex (int16_t v, const uint16_t *lp, uint16_t listSize, uint32_t *vlo, uint32_t *vhi) |
static HAL_BOOL | ar5413FillVpdTable (uint32_t pdGainIdx, int16_t Pmin, int16_t Pmax, const int16_t *pwrList, const uint16_t *VpdList, uint16_t numIntercepts, uint16_t retVpdList[][64]) |
static int16_t | interpolate_signed (uint16_t target, uint16_t srcLeft, uint16_t srcRight, int16_t targetLeft, int16_t targetRight) |
static int | ar5413getGainBoundariesAndPdadcsForPowers (struct ath_hal *ah, uint16_t channel, const RAW_DATA_STRUCT_2413 *pRawDataset, uint16_t pdGainOverlap_t2, int16_t *pMinCalPower, uint16_t pPdGainBoundaries[], uint16_t pPdGainValues[], uint16_t pPDADCValues[]) |
static HAL_BOOL | ar5413SetPowerTable (struct ath_hal *ah, int16_t *minPower, int16_t *maxPower, const struct ieee80211_channel *chan, uint16_t *rfXpdGain) |
static int16_t | ar5413GetMinPower (struct ath_hal *ah, const RAW_DATA_PER_CHANNEL_2413 *data) |
static int16_t | ar5413GetMaxPower (struct ath_hal *ah, const RAW_DATA_PER_CHANNEL_2413 *data) |
static HAL_BOOL | ar5413GetChannelMaxMinPower (struct ath_hal *ah, const struct ieee80211_channel *chan, int16_t *maxPow, int16_t *minPow) |
static void | ar5413RfDetach (struct ath_hal *ah) |
static HAL_BOOL | ar5413RfAttach (struct ath_hal *ah, HAL_STATUS *status) |
static HAL_BOOL | ar5413Probe (struct ath_hal *ah) |
AH_RF (RF5413, ar5413Probe, ar5413RfAttach) | |
#define AR5413 | ( | ah | ) | ((struct ar5413State *) AH5212(ah)->ah_rfHal) |
#define RF_BANK_SETUP | ( | _priv, | |
_ix, | |||
_col | |||
) |
#define VpdTable_I priv->vpdTable_I |
#define VpdTable_L priv->vpdTable_L |
#define VpdTable_R priv->vpdTable_R |
AH_RF | ( | RF5413 | , |
ar5413Probe | , | ||
ar5413RfAttach | |||
) |
void ar5212ModifyRfBuffer | ( | uint32_t * | rfBuf, |
uint32_t | reg32, | ||
uint32_t | numBits, | ||
uint32_t | firstBit, | ||
uint32_t | column | ||
) |
Definition at line 2674 of file ar5212_reset.c.
Referenced by ar5413SetRfRegs().
|
static |
Definition at line 335 of file ar5413.c.
References AH_FALSE, AH_TRUE, and GetLowerUpperIndex().
Referenced by ar5413getGainBoundariesAndPdadcsForPowers().
|
static |
Definition at line 683 of file ar5413.c.
References AH_FALSE, AH_NULL, AH_PRIVATE, AH_TRUE, ar5413GetMaxPower(), ar5413GetMinPower(), RAW_DATA_PER_CHANNEL_2413::channelValue, HALASSERT, headerInfo11A, headerInfo11B, headerInfo11G, RAW_DATA_STRUCT_2413::numChannels, and RAW_DATA_STRUCT_2413::pDataPerChannel.
Referenced by ar5413RfAttach().
|
static |
Definition at line 396 of file ar5413.c.
References AR5413, ar5413FillVpdTable(), GetLowerUpperIndex(), HAL_DEBUG_ANY, HALDEBUG, interpolate_signed(), MAX_NUM_PDGAINS_PER_CHANNEL, RAW_DATA_STRUCT_2413::numChannels, RAW_DATA_PER_PDGAIN_2413::numVpd, RAW_DATA_STRUCT_2413::pChannels, RAW_DATA_PER_PDGAIN_2413::pd_gain, PD_GAIN_BOUNDARY_STRETCH_IN_HALF_DB, RAW_DATA_STRUCT_2413::pDataPerChannel, RAW_DATA_PER_CHANNEL_2413::pDataPerPDGain, RAW_DATA_PER_PDGAIN_2413::pwr_t4, RAW_DATA_PER_PDGAIN_2413::Vpd, VpdTable_I, VpdTable_L, and VpdTable_R.
Referenced by ar5413SetPowerTable().
|
static |
Definition at line 666 of file ar5413.c.
References MAX_NUM_PDGAINS_PER_CHANNEL, RAW_DATA_PER_PDGAIN_2413::numVpd, RAW_DATA_PER_CHANNEL_2413::pDataPerPDGain, and RAW_DATA_PER_PDGAIN_2413::pwr_t4.
Referenced by ar5413GetChannelMaxMinPower().
|
static |
Definition at line 648 of file ar5413.c.
References MAX_NUM_PDGAINS_PER_CHANNEL, RAW_DATA_PER_PDGAIN_2413::numVpd, RAW_DATA_PER_CHANNEL_2413::pDataPerPDGain, and RAW_DATA_PER_PDGAIN_2413::pwr_t4.
Referenced by ar5413GetChannelMaxMinPower().
|
static |
Definition at line 267 of file ar5413.c.
References AH_NULL, AR5413, ar5413State::Bank1Data, ar5413State::Bank2Data, ar5413State::Bank3Data, ar5413State::Bank6Data, ar5413State::Bank7Data, HAL_DEBUG_ANY, HALASSERT, and HALDEBUG.
Referenced by ar5413RfAttach().
|
static |
Definition at line 767 of file ar5413.c.
References AH5212, AH_FALSE, ath_hal::ah_magic, AH_NULL, ath_hal_5212::ah_pcdacTable, ath_hal_5212::ah_pcdacTableSize, ath_hal_5212::ah_rfHal, AH_TRUE, AR5212_MAGIC, ar5212GetNfAdjust(), ar5413GetChannelMaxMinPower(), ar5413GetRfBank(), ar5413RfDetach(), ar5413SetChannel(), ar5413SetPowerTable(), ar5413SetRfRegs(), ar5413WriteRegs(), ath_hal_malloc(), ar5413State::base, RfHalFuncs::getChannelMaxMinPower, RfHalFuncs::getNfAdjust, RfHalFuncs::getRfBank, HAL_DEBUG_ANY, HAL_ENOMEM, HALASSERT, HALDEBUG, ar5413State::pcdacTable, RfHalFuncs::rfDetach, RfHalFuncs::setChannel, RfHalFuncs::setPowerTable, RfHalFuncs::setRfRegs, and RfHalFuncs::writeRegs.
|
static |
Definition at line 753 of file ar5413.c.
References AH5212, AH_NULL, ath_hal_5212::ah_rfHal, ath_hal_free(), and HALASSERT.
Referenced by ar5413RfAttach().
|
static |
Definition at line 80 of file ar5413.c.
References AH_FALSE, AH_MARK_SETCHANNEL, AH_PRIVATE, AH_TRUE, AR_PHY, AR_PHY_CCK_TX_CTRL, AR_PHY_CCK_TX_CTRL_JAPAN, ath_hal_gethwchannel(), ath_hal_reverseBits(), HAL_DEBUG_ANY, HALDEBUG, OS_MARK, OS_REG_READ, and OS_REG_WRITE.
Referenced by ar5413RfAttach().
|
static |
Definition at line 541 of file ar5413.c.
References AH5212, AH_NULL, ath_hal_5212::ah_pcdacTable, AH_PRIVATE, AH_TRUE, ath_hal_5212::ah_txPowerIndexOffset, ar5413getGainBoundariesAndPdadcsForPowers(), AR_PHY_TPCRG1, AR_PHY_TPCRG1_NUM_PD_GAIN, AR_PHY_TPCRG1_PDGAIN_SETTING1, AR_PHY_TPCRG1_PDGAIN_SETTING2, AR_PHY_TPCRG1_PDGAIN_SETTING3, AR_PHY_TPCRG5, AR_PHY_TPCRG5_PD_GAIN_BOUNDARY_1, AR_PHY_TPCRG5_PD_GAIN_BOUNDARY_2, AR_PHY_TPCRG5_PD_GAIN_BOUNDARY_3, AR_PHY_TPCRG5_PD_GAIN_BOUNDARY_4, AR_PHY_TPCRG5_PD_GAIN_OVERLAP, ath_hal_gethwchannel(), HAL_DEBUG_RFPARAM, HALASSERT, HALDEBUG, headerInfo11A, headerInfo11B, headerInfo11G, RAW_DATA_PER_CHANNEL_2413::numPdGains, OS_REG_READ, OS_REG_RMW_FIELD, OS_REG_WRITE, RAW_DATA_STRUCT_2413::pDataPerChannel, and SM.
Referenced by ar5413RfAttach().
|
static |
Definition at line 159 of file ar5413.c.
References AH5212, AH_FALSE, AH_NULL, AH_PRIVATE, ath_hal_5212::ah_rfgainState, AH_TRUE, ar5212ModifyRfBuffer(), AR5413, ath_hal_gethwchannel(), ath_hal_reverseBits(), ar5413State::Bank1Data, ar5413State::Bank2Data, ar5413State::Bank3Data, ar5413State::Bank6Data, ar5413State::Bank7Data, HAL_EEPROM::ee_db1, HAL_EEPROM::ee_db2, HAL_EEPROM::ee_db3, HAL_EEPROM::ee_db4, HAL_EEPROM::ee_dbFor24, HAL_EEPROM::ee_dbFor24g, HAL_EEPROM::ee_ob1, HAL_EEPROM::ee_ob2, HAL_EEPROM::ee_ob3, HAL_EEPROM::ee_ob4, HAL_EEPROM::ee_obFor24, HAL_EEPROM::ee_obFor24g, HAL_DEBUG_ANY, HAL_DEBUG_RFPARAM, HAL_INI_WRITE_BANK, HAL_RFGAIN_INACTIVE, HALASSERT, HALDEBUG, IEEE80211_CHAN_ALLFULL, and RF_BANK_SETUP.
Referenced by ar5413RfAttach().
|
static |
Definition at line 66 of file ar5413.c.
References HAL_INI_WRITE_ARRAY.
Referenced by ar5413RfAttach().
|
static |
Definition at line 290 of file ar5413.c.
Referenced by ar5413FillVpdTable(), and ar5413getGainBoundariesAndPdadcsForPowers().
|
static |
Definition at line 377 of file ar5413.c.
Referenced by ar5413getGainBoundariesAndPdadcsForPowers().