summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/ti/wlcore/acx.h
diff options
context:
space:
mode:
authorNadim Zubidat <nadimz@ti.com>2013-03-12 17:19:39 +0200
committerLuciano Coelho <coelho@ti.com>2013-03-25 12:33:11 +0200
commit0a9ffac09f772edee60abf3a0fe00f7bb5335c51 (patch)
treef45260117a5884abeb4d1b91d7ef4513a5860095 /drivers/net/wireless/ti/wlcore/acx.h
parent93d5d10085ad7bf89a9e36c6ba117b9afe2de823 (diff)
wlcore: report rssi from roaming statistics
report the average beacon rssi which is calculated by firmware for roaming statistics instead of the last rx packet rssi. this results a more accurate rssi reporting Signed-off-by: Nadim Zubidat <nadimz@ti.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
Diffstat (limited to 'drivers/net/wireless/ti/wlcore/acx.h')
-rw-r--r--drivers/net/wireless/ti/wlcore/acx.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/drivers/net/wireless/ti/wlcore/acx.h b/drivers/net/wireless/ti/wlcore/acx.h
index 1a61e8550b7b..6dcfad9b0472 100644
--- a/drivers/net/wireless/ti/wlcore/acx.h
+++ b/drivers/net/wireless/ti/wlcore/acx.h
@@ -953,6 +953,18 @@ struct acx_rx_filter_cfg {
u8 fields[0];
} __packed;
+struct acx_roaming_stats {
+ struct acx_header header;
+
+ u8 role_id;
+ u8 pad[3];
+ u32 missed_beacons;
+ u8 snr_data;
+ u8 snr_bacon;
+ s8 rssi_data;
+ s8 rssi_beacon;
+} __packed;
+
enum {
ACX_WAKE_UP_CONDITIONS = 0x0000,
ACX_MEM_CFG = 0x0001,
@@ -1110,6 +1122,8 @@ int wl1271_acx_set_inconnection_sta(struct wl1271 *wl, u8 *addr);
int wl1271_acx_fm_coex(struct wl1271 *wl);
int wl12xx_acx_set_rate_mgmt_params(struct wl1271 *wl);
int wl12xx_acx_config_hangover(struct wl1271 *wl);
+int wlcore_acx_average_rssi(struct wl1271 *wl, struct wl12xx_vif *wlvif,
+ s8 *avg_rssi);
#ifdef CONFIG_PM
int wl1271_acx_default_rx_filter_enable(struct wl1271 *wl, bool enable,