staging: wilc1000: remove manual sleep mode
authorAdham Abozaeid <adham.abozaeid@microchip.com>
Thu, 25 Jul 2019 21:31:37 +0000 (21:31 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 30 Jul 2019 07:56:46 +0000 (09:56 +0200)
manual sleep mode was used to put the wilc1000 chip in sleep while in
disconnected state. This is taken care of in the firmware

Signed-off-by: Adham Abozaeid <adham.abozaeid@microchip.com>
Link: https://lore.kernel.org/r/20190725213125.2810-7-adham.abozaeid@microchip.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/wilc1000/wilc_hif.c
drivers/staging/wilc1000/wilc_sdio.c
drivers/staging/wilc1000/wilc_wlan.c
drivers/staging/wilc1000/wilc_wlan.h

index 75a6931aa147eeb6f84ffd3fb990e8480601a17c..f8646ea3b0c4da62992d1f5e471cbb8c3221152e 100644 (file)
@@ -1056,13 +1056,9 @@ static void handle_scan_timer(struct work_struct *work)
 static void handle_scan_complete(struct work_struct *work)
 {
        struct host_if_msg *msg = container_of(work, struct host_if_msg, work);
-       struct wilc *wilc = msg->vif->wilc;
 
        del_timer(&msg->vif->hif_drv->scan_timer);
 
-       if (!wilc_wlan_get_num_conn_ifcs(wilc))
-               wilc_chip_sleep_manually(wilc);
-
        handle_scan_done(msg->vif, SCAN_EVENT_DONE);
 
        kfree(msg);
index 4c1c81fed11ffb6d79b2cbe19fe0c68fb95f975f..2f9aa36e011406917131d0416eac9e41944dd2f3 100644 (file)
@@ -193,9 +193,7 @@ static int wilc_sdio_suspend(struct device *dev)
        dev_info(dev, "sdio suspend\n");
        chip_wakeup(wilc);
 
-       if (!wilc->suspend_event) {
-               wilc_chip_sleep_manually(wilc);
-       } else {
+       if (wilc->suspend_event) {
                host_sleep_notify(wilc);
                chip_allow_sleep(wilc);
        }
index 8ca0a7a4fa3fe7c6c2c9658cb3183a871bec5a78..d4ca6467485caaa8e81695f3a4277b0cc7402d4c 100644 (file)
@@ -455,20 +455,6 @@ void chip_wakeup(struct wilc *wilc)
 }
 EXPORT_SYMBOL_GPL(chip_wakeup);
 
-void wilc_chip_sleep_manually(struct wilc *wilc)
-{
-       if (wilc->chip_ps_state != WILC_CHIP_WAKEDUP)
-               return;
-       acquire_bus(wilc, WILC_BUS_ACQUIRE_ONLY);
-
-       chip_allow_sleep(wilc);
-       wilc->hif_func->hif_write_reg(wilc, 0x10a8, 1);
-
-       wilc->chip_ps_state = WILC_CHIP_SLEEPING_MANUAL;
-       release_bus(wilc, WILC_BUS_RELEASE_ONLY);
-}
-EXPORT_SYMBOL_GPL(wilc_chip_sleep_manually);
-
 void host_wakeup_notify(struct wilc *wilc)
 {
        acquire_bus(wilc, WILC_BUS_ACQUIRE_ONLY);
index b700141426860a24d0a08489e0ddc86366c0dda5..802f11807659b945189edcbc7f2d260687842db9 100644 (file)
@@ -293,8 +293,6 @@ int wilc_wlan_cfg_get(struct wilc_vif *vif, int start, u16 wid, int commit,
                      u32 drv_handler);
 int wilc_wlan_txq_add_mgmt_pkt(struct net_device *dev, void *priv, u8 *buffer,
                               u32 buffer_size, void (*func)(void *, int));
-void wilc_chip_sleep_manually(struct wilc *wilc);
-
 void wilc_enable_tcp_ack_filter(struct wilc_vif *vif, bool value);
 int wilc_wlan_get_num_conn_ifcs(struct wilc *wilc);
 netdev_tx_t wilc_mac_xmit(struct sk_buff *skb, struct net_device *dev);