diff options
author | Raja Mani <rmani@qca.qualcomm.com> | 2011-11-07 15:52:45 -0500 |
---|---|---|
committer | Kalle Valo <kvalo@qca.qualcomm.com> | 2011-11-11 05:59:59 -0500 |
commit | 45cf110b2b77914a9f02bbf1ba60796f17898be2 (patch) | |
tree | 53d4a031fcd2a635dc7317847da3af158b1d4d9a /drivers/net/wireless/ath/ath6kl/wmi.h | |
parent | 5c9b4fa19a488de48f1cc2268a7b7b247723568a (diff) |
ath6kl: Add wmi functions to configure WOW mode and host sleep mode
It will be used in WOW suspend/resume functions to
active/deactivate WOW suspend mode.
Signed-off-by: Raja Mani <rmani@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
Diffstat (limited to 'drivers/net/wireless/ath/ath6kl/wmi.h')
-rw-r--r-- | drivers/net/wireless/ath/ath6kl/wmi.h | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath/ath6kl/wmi.h b/drivers/net/wireless/ath/ath6kl/wmi.h index df42e4be876a..a65eee20d18a 100644 --- a/drivers/net/wireless/ath/ath6kl/wmi.h +++ b/drivers/net/wireless/ath/ath6kl/wmi.h | |||
@@ -1818,6 +1818,42 @@ struct wmi_set_ip_cmd { | |||
1818 | __le32 ips[MAX_IP_ADDRS]; | 1818 | __le32 ips[MAX_IP_ADDRS]; |
1819 | } __packed; | 1819 | } __packed; |
1820 | 1820 | ||
1821 | enum ath6kl_wow_filters { | ||
1822 | WOW_FILTER_SSID = BIT(0), | ||
1823 | WOW_FILTER_OPTION_MAGIC_PACKET = BIT(2), | ||
1824 | WOW_FILTER_OPTION_EAP_REQ = BIT(3), | ||
1825 | WOW_FILTER_OPTION_PATTERNS = BIT(4), | ||
1826 | WOW_FILTER_OPTION_OFFLOAD_ARP = BIT(5), | ||
1827 | WOW_FILTER_OPTION_OFFLOAD_NS = BIT(6), | ||
1828 | WOW_FILTER_OPTION_OFFLOAD_GTK = BIT(7), | ||
1829 | WOW_FILTER_OPTION_8021X_4WAYHS = BIT(8), | ||
1830 | WOW_FILTER_OPTION_NLO_DISCVRY = BIT(9), | ||
1831 | WOW_FILTER_OPTION_NWK_DISASSOC = BIT(10), | ||
1832 | WOW_FILTER_OPTION_GTK_ERROR = BIT(11), | ||
1833 | WOW_FILTER_OPTION_TEST_MODE = BIT(15), | ||
1834 | }; | ||
1835 | |||
1836 | enum ath6kl_host_mode { | ||
1837 | ATH6KL_HOST_MODE_AWAKE, | ||
1838 | ATH6KL_HOST_MODE_ASLEEP, | ||
1839 | }; | ||
1840 | |||
1841 | struct wmi_set_host_sleep_mode_cmd { | ||
1842 | __le32 awake; | ||
1843 | __le32 asleep; | ||
1844 | } __packed; | ||
1845 | |||
1846 | enum ath6kl_wow_mode { | ||
1847 | ATH6KL_WOW_MODE_DISABLE, | ||
1848 | ATH6KL_WOW_MODE_ENABLE, | ||
1849 | }; | ||
1850 | |||
1851 | struct wmi_set_wow_mode_cmd { | ||
1852 | __le32 enable_wow; | ||
1853 | __le32 filter; | ||
1854 | __le16 host_req_delay; | ||
1855 | } __packed; | ||
1856 | |||
1821 | struct wmi_add_wow_pattern_cmd { | 1857 | struct wmi_add_wow_pattern_cmd { |
1822 | u8 filter_list_id; | 1858 | u8 filter_list_id; |
1823 | u8 filter_size; | 1859 | u8 filter_size; |
@@ -2285,6 +2321,11 @@ int ath6kl_wmi_test_cmd(struct wmi *wmi, void *buf, size_t len); | |||
2285 | s32 ath6kl_wmi_get_rate(s8 rate_index); | 2321 | s32 ath6kl_wmi_get_rate(s8 rate_index); |
2286 | 2322 | ||
2287 | int ath6kl_wmi_set_ip_cmd(struct wmi *wmi, struct wmi_set_ip_cmd *ip_cmd); | 2323 | int ath6kl_wmi_set_ip_cmd(struct wmi *wmi, struct wmi_set_ip_cmd *ip_cmd); |
2324 | int ath6kl_wmi_set_host_sleep_mode_cmd(struct wmi *wmi, u8 if_idx, | ||
2325 | enum ath6kl_host_mode host_mode); | ||
2326 | int ath6kl_wmi_set_wow_mode_cmd(struct wmi *wmi, u8 if_idx, | ||
2327 | enum ath6kl_wow_mode wow_mode, | ||
2328 | u32 filter, u16 host_req_delay); | ||
2288 | int ath6kl_wmi_add_wow_pattern_cmd(struct wmi *wmi, u8 if_idx, | 2329 | int ath6kl_wmi_add_wow_pattern_cmd(struct wmi *wmi, u8 if_idx, |
2289 | u8 list_id, u8 filter_size, | 2330 | u8 list_id, u8 filter_size, |
2290 | u8 filter_offset, u8 *filter, u8 *mask); | 2331 | u8 filter_offset, u8 *filter, u8 *mask); |