Commit 3124a1f7 authored by Ajay Singh's avatar Ajay Singh Committed by Greg Kroah-Hartman

staging: wilc1000: move 'chip_ps_state' static variable as part of 'wilc' struct

Move the static variable as part of 'wilc' priv struct.
Signed-off-by: default avatarAjay Singh <ajay.kathat@microchip.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent abff8e33
...@@ -1066,6 +1066,7 @@ int wilc_netdev_init(struct wilc **wilc, struct device *dev, int io_type, ...@@ -1066,6 +1066,7 @@ int wilc_netdev_init(struct wilc **wilc, struct device *dev, int io_type,
wl->io_type = io_type; wl->io_type = io_type;
wl->hif_func = ops; wl->hif_func = ops;
wl->enable_ps = true; wl->enable_ps = true;
wl->chip_ps_state = CHIP_WAKEDUP;
INIT_LIST_HEAD(&wl->txq_head.list); INIT_LIST_HEAD(&wl->txq_head.list);
INIT_LIST_HEAD(&wl->rxq_head.list); INIT_LIST_HEAD(&wl->rxq_head.list);
......
...@@ -201,6 +201,7 @@ struct wilc { ...@@ -201,6 +201,7 @@ struct wilc {
bool enable_ps; bool enable_ps;
int clients_count; int clients_count;
struct workqueue_struct *hif_workqueue; struct workqueue_struct *hif_workqueue;
enum chip_ps_states chip_ps_state;
}; };
struct wilc_wfi_mon_priv { struct wilc_wfi_mon_priv {
......
...@@ -9,8 +9,6 @@ ...@@ -9,8 +9,6 @@
#include "wilc_wfi_netdevice.h" #include "wilc_wfi_netdevice.h"
#include "wilc_wlan_cfg.h" #include "wilc_wlan_cfg.h"
static enum chip_ps_states chip_ps_state = CHIP_WAKEDUP;
static inline bool is_wilc1000(u32 id) static inline bool is_wilc1000(u32 id)
{ {
return ((id & 0xfffff000) == 0x100000 ? true : false); return ((id & 0xfffff000) == 0x100000 ? true : false);
...@@ -444,7 +442,7 @@ void chip_wakeup(struct wilc *wilc) ...@@ -444,7 +442,7 @@ void chip_wakeup(struct wilc *wilc)
} while ((clk_status_reg & 0x1) == 0); } while ((clk_status_reg & 0x1) == 0);
} }
if (chip_ps_state == CHIP_SLEEPING_MANUAL) { if (wilc->chip_ps_state == CHIP_SLEEPING_MANUAL) {
if (wilc_get_chipid(wilc, false) < 0x1002b0) { if (wilc_get_chipid(wilc, false) < 0x1002b0) {
u32 val32; u32 val32;
...@@ -457,19 +455,19 @@ void chip_wakeup(struct wilc *wilc) ...@@ -457,19 +455,19 @@ void chip_wakeup(struct wilc *wilc)
wilc->hif_func->hif_write_reg(wilc, 0x1e9c, val32); wilc->hif_func->hif_write_reg(wilc, 0x1e9c, val32);
} }
} }
chip_ps_state = CHIP_WAKEDUP; wilc->chip_ps_state = CHIP_WAKEDUP;
} }
void wilc_chip_sleep_manually(struct wilc *wilc) void wilc_chip_sleep_manually(struct wilc *wilc)
{ {
if (chip_ps_state != CHIP_WAKEDUP) if (wilc->chip_ps_state != CHIP_WAKEDUP)
return; return;
acquire_bus(wilc, ACQUIRE_ONLY); acquire_bus(wilc, ACQUIRE_ONLY);
chip_allow_sleep(wilc); chip_allow_sleep(wilc);
wilc->hif_func->hif_write_reg(wilc, 0x10a8, 1); wilc->hif_func->hif_write_reg(wilc, 0x10a8, 1);
chip_ps_state = CHIP_SLEEPING_MANUAL; wilc->chip_ps_state = CHIP_SLEEPING_MANUAL;
release_bus(wilc, RELEASE_ONLY); release_bus(wilc, RELEASE_ONLY);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment