svn commit: r219318 - head/sys/dev/ath/ath_hal
Adrian Chadd
adrian at FreeBSD.org
Sun Mar 6 00:30:44 UTC 2011
Author: adrian
Date: Sun Mar 6 00:30:43 2011
New Revision: 219318
URL: http://svn.freebsd.org/changeset/base/219318
Log:
Add an EEPROM op that extracts out the power table offset.
It defaults to -5 dBm for eeproms earlier than v21.
This apparently only applies to Merlin (AR9280) or later,
earlier 11n chipsets have a power table offset of 0.
All the code in ath9k which checks the power table offset
and takes it into account first ensures the chip is
Merlin or later.
Modified:
head/sys/dev/ath/ath_hal/ah_eeprom.h
head/sys/dev/ath/ath_hal/ah_eeprom_v14.c
Modified: head/sys/dev/ath/ath_hal/ah_eeprom.h
==============================================================================
--- head/sys/dev/ath/ath_hal/ah_eeprom.h Sat Mar 5 22:31:03 2011 (r219317)
+++ head/sys/dev/ath/ath_hal/ah_eeprom.h Sun Mar 6 00:30:43 2011 (r219318)
@@ -100,6 +100,7 @@ enum {
AR_EEP_ANTGAINMAX_5, /* int8_t* */
AR_EEP_ANTGAINMAX_2, /* int8_t* */
AR_EEP_WRITEPROTECT, /* use ath_hal_eepromGetFlag */
+ AR_EEP_PWR_TABLE_OFFSET /* int8_t* */
};
typedef struct {
Modified: head/sys/dev/ath/ath_hal/ah_eeprom_v14.c
==============================================================================
--- head/sys/dev/ath/ath_hal/ah_eeprom_v14.c Sat Mar 5 22:31:03 2011 (r219317)
+++ head/sys/dev/ath/ath_hal/ah_eeprom_v14.c Sun Mar 6 00:30:43 2011 (r219318)
@@ -126,6 +126,13 @@ v14EepromGet(struct ath_hal *ah, int par
case AR_EEP_ANTGAINMAX_5:
*(int8_t *) val = ee->ee_antennaGainMax[0];
return HAL_OK;
+ case AR_EEP_PWR_TABLE_OFFSET:
+ if (IS_VERS(>=, AR5416_EEP_MINOR_VER_21))
+ *(int8_t *) val = pBase->pwr_table_offset;
+ else
+ *(int8_t *) val = AR5416_PWR_TABLE_OFFSET_DB;
+ return HAL_OK;
+
default:
HALASSERT(0);
return HAL_EINVAL;
More information about the svn-src-all
mailing list