diff options
author | Juuso Oikarinen <juuso.oikarinen@nokia.com> | 2009-10-13 05:47:46 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2009-10-27 16:48:09 -0400 |
commit | 11f70f9715f0d8f99eac42d69689e8df15283fea (patch) | |
tree | 92f5e45ca20e554948800aa3beacab00604e8b74 /drivers/net/wireless/wl12xx/wl1271_acx.h | |
parent | eb5b28d021a1b96050f7af46e9140eb0051cc6d8 (diff) |
wl1271: Implement beacon early termination support
Add support to enable beacon early termination in the firmware. Early
Beacon termination is a feature which allows the radio to be turned off
after TIM IE to save power.
Signed-off-by: Juuso Oikarinen <juuso.oikarinen@nokia.com>
Reviewed-by: Luciano Coelho <luciano.coelho@nokia.com>
Signed-off-by: Luciano Coelho <luciano.coelho@nokia.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/wl12xx/wl1271_acx.h')
-rw-r--r-- | drivers/net/wireless/wl12xx/wl1271_acx.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/drivers/net/wireless/wl12xx/wl1271_acx.h b/drivers/net/wireless/wl12xx/wl1271_acx.h index 73ef2bdf3b74..29fd3635e383 100644 --- a/drivers/net/wireless/wl12xx/wl1271_acx.h +++ b/drivers/net/wireless/wl12xx/wl1271_acx.h | |||
@@ -946,6 +946,15 @@ struct wl1271_acx_rx_config_opt { | |||
946 | u8 reserved; | 946 | u8 reserved; |
947 | } __attribute__ ((packed)); | 947 | } __attribute__ ((packed)); |
948 | 948 | ||
949 | |||
950 | struct wl1271_acx_bet_enable { | ||
951 | struct acx_header header; | ||
952 | |||
953 | u8 enable; | ||
954 | u8 max_consecutive; | ||
955 | u8 padding[2]; | ||
956 | } __attribute__ ((packed)); | ||
957 | |||
949 | enum { | 958 | enum { |
950 | ACX_WAKE_UP_CONDITIONS = 0x0002, | 959 | ACX_WAKE_UP_CONDITIONS = 0x0002, |
951 | ACX_MEM_CFG = 0x0003, | 960 | ACX_MEM_CFG = 0x0003, |
@@ -1043,7 +1052,7 @@ int wl1271_acx_aid(struct wl1271 *wl, u16 aid); | |||
1043 | int wl1271_acx_event_mbox_mask(struct wl1271 *wl, u32 event_mask); | 1052 | int wl1271_acx_event_mbox_mask(struct wl1271 *wl, u32 event_mask); |
1044 | int wl1271_acx_set_preamble(struct wl1271 *wl, enum acx_preamble_type preamble); | 1053 | int wl1271_acx_set_preamble(struct wl1271 *wl, enum acx_preamble_type preamble); |
1045 | int wl1271_acx_cts_protect(struct wl1271 *wl, | 1054 | int wl1271_acx_cts_protect(struct wl1271 *wl, |
1046 | enum acx_ctsprotect_type ctsprotect); | 1055 | enum acx_ctsprotect_type ctsprotect); |
1047 | int wl1271_acx_statistics(struct wl1271 *wl, struct acx_statistics *stats); | 1056 | int wl1271_acx_statistics(struct wl1271 *wl, struct acx_statistics *stats); |
1048 | int wl1271_acx_rate_policies(struct wl1271 *wl, u32 enabled_rates); | 1057 | int wl1271_acx_rate_policies(struct wl1271 *wl, u32 enabled_rates); |
1049 | int wl1271_acx_ac_cfg(struct wl1271 *wl); | 1058 | int wl1271_acx_ac_cfg(struct wl1271 *wl); |
@@ -1054,5 +1063,6 @@ int wl1271_acx_mem_cfg(struct wl1271 *wl); | |||
1054 | int wl1271_acx_init_mem_config(struct wl1271 *wl); | 1063 | int wl1271_acx_init_mem_config(struct wl1271 *wl); |
1055 | int wl1271_acx_init_rx_interrupt(struct wl1271 *wl); | 1064 | int wl1271_acx_init_rx_interrupt(struct wl1271 *wl); |
1056 | int wl1271_acx_smart_reflex(struct wl1271 *wl); | 1065 | int wl1271_acx_smart_reflex(struct wl1271 *wl); |
1066 | int wl1271_acx_bet_enable(struct wl1271 *wl, bool enable); | ||
1057 | 1067 | ||
1058 | #endif /* __WL1271_ACX_H__ */ | 1068 | #endif /* __WL1271_ACX_H__ */ |