summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath/wil6210/wil_platform.h
diff options
context:
space:
mode:
authorMaya Erez <qca_merez@qca.qualcomm.com>2017-06-16 10:38:04 +0300
committerKalle Valo <kvalo@qca.qualcomm.com>2017-06-21 16:18:47 +0300
commitfe9ee51e6a43a79d9c6bf92124b4db542157aed3 (patch)
tree4cf1d4315ce822ac67346b1542586faa95826fff /drivers/net/wireless/ath/wil6210/wil_platform.h
parent5b49ee9f13c7c3079117fc07ee603656c809e6c2 (diff)
downloadlinux-fe9ee51e6a43a79d9c6bf92124b4db542157aed3.tar.gz
linux-fe9ee51e6a43a79d9c6bf92124b4db542157aed3.tar.bz2
linux-fe9ee51e6a43a79d9c6bf92124b4db542157aed3.zip
wil6210: add support for PCIe D3hot in system suspend
In order to preserve the connection in suspend/resume flow, wil6210 host allows going to PCIe D3hot state in suspend, instead of performing a full wil6210 device reset. This requires the platform ability to initiate wakeup in case of RX data. To check that, a new platform API is added. In addition, add cfg80211 suspend/resume callbacks implementation. Signed-off-by: Maya Erez <qca_merez@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
Diffstat (limited to 'drivers/net/wireless/ath/wil6210/wil_platform.h')
-rw-r--r--drivers/net/wireless/ath/wil6210/wil_platform.h7
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/net/wireless/ath/wil6210/wil_platform.h b/drivers/net/wireless/ath/wil6210/wil_platform.h
index f8c41172a3f4..5d9e4bfcb045 100644
--- a/drivers/net/wireless/ath/wil6210/wil_platform.h
+++ b/drivers/net/wireless/ath/wil6210/wil_platform.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2014-2016 Qualcomm Atheros, Inc.
+ * Copyright (c) 2014-2017 Qualcomm Atheros, Inc.
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
@@ -33,10 +33,11 @@ enum wil_platform_event {
*/
struct wil_platform_ops {
int (*bus_request)(void *handle, uint32_t kbps /* KBytes/Sec */);
- int (*suspend)(void *handle);
- int (*resume)(void *handle);
+ int (*suspend)(void *handle, bool keep_device_power);
+ int (*resume)(void *handle, bool device_powered_on);
void (*uninit)(void *handle);
int (*notify)(void *handle, enum wil_platform_event evt);
+ bool (*keep_radio_on_during_sleep)(void *handle);
};
/**