Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions unisocwifi/cmdevt.c
Original file line number Diff line number Diff line change
Expand Up @@ -3257,6 +3257,11 @@ static void sprdwl_event_fw_power_down(struct sprdwl_vif *vif, u8 *data, u16 len
{
struct sprdwl_work *misc_work;

/* When power down is disabled in kernel option, silently ignore
* the firmware's sleep request like we don't know the command. */
if (disable_powersave)
return;

misc_work = sprdwl_alloc_work(0);
if (!misc_work) {
wl_err("%s out of memory\n", __func__);
Expand Down
1 change: 1 addition & 0 deletions unisocwifi/cmdevt.h
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,7 @@
#define SPRDWL_11V_ALL_FEATURE 0xFFFF

extern unsigned int wfa_cap;
extern unsigned int disable_powersave;
enum SPRDWL_CMD_LIST {
WIFI_CMD_MIN = 0,
WIFI_CMD_ERR = WIFI_CMD_MIN,
Expand Down
4 changes: 4 additions & 0 deletions unisocwifi/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -1658,6 +1658,10 @@ unsigned int wfa_cap;
module_param(wfa_cap, uint, 0000);
MODULE_PARM_DESC(wfa_cap, "set capability for WFA test");

unsigned int disable_powersave;
module_param(disable_powersave, uint, 0000);
MODULE_PARM_DESC(disable_powersave, "Disable firmware power save mode (0=default, 1=ignore EVENT_PWR_DOWN)");

unsigned int tcp_ack_drop_cnt = SPRDWL_TCP_ACK_DROP_CNT;
/* Maybe you need S_IRUGO | S_IWUSR for debug */
module_param(tcp_ack_drop_cnt, uint, 0000);
Expand Down
Loading