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

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
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -1066,6 +1066,7 @@ int wilc_netdev_init(struct wilc **wilc, struct device *dev, int io_type,
	wl->io_type = io_type;
	wl->hif_func = ops;
	wl->enable_ps = true;
	wl->chip_ps_state = CHIP_WAKEDUP;
	INIT_LIST_HEAD(&wl->txq_head.list);
	INIT_LIST_HEAD(&wl->rxq_head.list);

+1 −0
Original line number Diff line number Diff line
@@ -201,6 +201,7 @@ struct wilc {
	bool enable_ps;
	int clients_count;
	struct workqueue_struct *hif_workqueue;
	enum chip_ps_states chip_ps_state;
};

struct wilc_wfi_mon_priv {
+4 −6
Original line number Diff line number Diff line
@@ -9,8 +9,6 @@
#include "wilc_wfi_netdevice.h"
#include "wilc_wlan_cfg.h"

static enum chip_ps_states chip_ps_state = CHIP_WAKEDUP;

static inline bool is_wilc1000(u32 id)
{
	return ((id & 0xfffff000) == 0x100000 ? true : false);
@@ -444,7 +442,7 @@ void chip_wakeup(struct wilc *wilc)
		} 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) {
			u32 val32;

@@ -457,19 +455,19 @@ void chip_wakeup(struct wilc *wilc)
			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)
{
	if (chip_ps_state != CHIP_WAKEDUP)
	if (wilc->chip_ps_state != CHIP_WAKEDUP)
		return;
	acquire_bus(wilc, ACQUIRE_ONLY);

	chip_allow_sleep(wilc);
	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);
}