summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/p54/p54.h
diff options
context:
space:
mode:
authorChristian Lamparter2008-12-14 14:45:30 +0100
committerJohn W. Linville2008-12-19 21:23:17 +0100
commit69ba3e5d74a467a64248cd90ccafb524b1fddcb5 (patch)
tree81d1dcf8216a132cce176321612cab6b6d36e601 /drivers/net/wireless/p54/p54.h
parentrtl8187: Fix error returns (diff)
downloadkernel-qcow2-linux-69ba3e5d74a467a64248cd90ccafb524b1fddcb5.tar.gz
kernel-qcow2-linux-69ba3e5d74a467a64248cd90ccafb524b1fddcb5.tar.xz
kernel-qcow2-linux-69ba3e5d74a467a64248cd90ccafb524b1fddcb5.zip
p54: more accurate rssi to dBm conversion
This patch replaces the static rssi auto calibration data with more precise values out of the device's eeprom. Signed-off-by: Christian Lamparter <chunkeey@web.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/p54/p54.h')
-rw-r--r--drivers/net/wireless/p54/p54.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/net/wireless/p54/p54.h b/drivers/net/wireless/p54/p54.h
index 23b80ef4d015..e0a68815a471 100644
--- a/drivers/net/wireless/p54/p54.h
+++ b/drivers/net/wireless/p54/p54.h
@@ -61,6 +61,13 @@ struct p54_edcf_queue_param {
__le16 txop;
} __attribute__ ((packed));
+struct p54_rssi_linear_approximation {
+ s16 mul;
+ s16 add;
+ s16 longbow_unkn;
+ s16 longbow_unk2;
+};
+
#define EEPROM_READBACK_LEN 0x3fc
#define ISL38XX_DEV_FIRMWARE_ADDR 0x20000
@@ -91,6 +98,7 @@ struct p54_common {
struct pda_channel_output_limit *output_limit;
unsigned int output_limit_len;
struct pda_pa_curve_data *curve_data;
+ struct p54_rssi_linear_approximation rssical_db[IEEE80211_NUM_BANDS];
unsigned int filter_flags;
bool use_short_slot;
u16 rxhw;