diff options
author | Maya Erez <qca_merez@qca.qualcomm.com> | 2017-06-16 10:38:04 +0300 |
---|---|---|
committer | Kalle Valo <kvalo@qca.qualcomm.com> | 2017-06-21 16:18:47 +0300 |
commit | fe9ee51e6a43a79d9c6bf92124b4db542157aed3 (patch) | |
tree | 4cf1d4315ce822ac67346b1542586faa95826fff /drivers/net/wireless/ath/wil6210/wil_platform.h | |
parent | 5b49ee9f13c7c3079117fc07ee603656c809e6c2 (diff) | |
download | linux-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.h | 7 |
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); }; /** |