wifi: wilc1000: remove suspend/resume from cfg80211 part
WILC1000 suspend/resume implementation is currently composed of two parts: suspend/resume ops implemented in cfg80211 ops, which merely sets a flag, and suspend/resume ops in sdio/spi driver which, based on this flag, execute or not the suspend/resume mechanism. This dual set of ops is not really needed , so keep only the sdio part to implement suspend/resume. While doing so, remove the now unused suspend_event flag. Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com> Signed-off-by: Kalle Valo <kvalo@kernel.org> Link: https://msgid.link/20240613-wilc_suspend-v1-5-c2f766d0988c@bootlin.com
This commit is contained in:
committed by
Kalle Valo
parent
a814112e95
commit
1e9e258d9f
@@ -1617,23 +1617,6 @@ static int del_virtual_intf(struct wiphy *wiphy, struct wireless_dev *wdev)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int wilc_suspend(struct wiphy *wiphy, struct cfg80211_wowlan *wow)
|
||||
{
|
||||
struct wilc *wl = wiphy_priv(wiphy);
|
||||
|
||||
if (!wow && wilc_wlan_get_num_conn_ifcs(wl))
|
||||
wl->suspend_event = true;
|
||||
else
|
||||
wl->suspend_event = false;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int wilc_resume(struct wiphy *wiphy)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void wilc_set_wakeup(struct wiphy *wiphy, bool enabled)
|
||||
{
|
||||
struct wilc *wl = wiphy_priv(wiphy);
|
||||
@@ -1739,8 +1722,6 @@ static const struct cfg80211_ops wilc_cfg80211_ops = {
|
||||
.set_power_mgmt = set_power_mgmt,
|
||||
.set_cqm_rssi_config = set_cqm_rssi_config,
|
||||
|
||||
.suspend = wilc_suspend,
|
||||
.resume = wilc_resume,
|
||||
.set_wakeup = wilc_set_wakeup,
|
||||
.set_tx_power = set_tx_power,
|
||||
.get_tx_power = get_tx_power,
|
||||
|
||||
@@ -272,7 +272,6 @@ struct wilc {
|
||||
const struct firmware *firmware;
|
||||
|
||||
struct device *dev;
|
||||
bool suspend_event;
|
||||
|
||||
struct workqueue_struct *hif_workqueue;
|
||||
struct wilc_cfg cfg;
|
||||
|
||||
@@ -980,8 +980,7 @@ static int wilc_sdio_suspend(struct device *dev)
|
||||
if (!IS_ERR(wilc->rtc_clk))
|
||||
clk_disable_unprepare(wilc->rtc_clk);
|
||||
|
||||
if (wilc->suspend_event)
|
||||
host_sleep_notify(wilc);
|
||||
host_sleep_notify(wilc);
|
||||
|
||||
ret = wilc_sdio_reset(wilc);
|
||||
if (ret) {
|
||||
@@ -1000,8 +999,7 @@ static int wilc_sdio_resume(struct device *dev)
|
||||
dev_info(dev, "sdio resume\n");
|
||||
wilc_sdio_init(wilc, true);
|
||||
|
||||
if (wilc->suspend_event)
|
||||
host_wakeup_notify(wilc);
|
||||
host_wakeup_notify(wilc);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user