Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 53d6aa6f authored by Maya Erez's avatar Maya Erez
Browse files

wil6210: NOC time-out fixes



On MSM there is NOC time-out in case the 11AD device wake-up
latency exceeds 6.7ms.
In order to guarantee fast wake-up in 11AD BL, set USAGE_8
bit 0, which prevents deep sleep in BL.
In addition, to shorten the wake-up time in operational FW,
mark the FW to set T_POWER_ON to 0, by setting BIT 1 of USAGE_8
register.

Change-Id: Ic1084f0ba1a226723818f7e4a7b1d81ce30bb31f
Signed-off-by: default avatarMaya Erez <merez@codeaurora.org>
parent 17ef6c3a
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -887,6 +887,10 @@ int wil_reset(struct wil6210_priv *wil, bool load_fw)
	if (wil->hw_version == HW_VER_UNKNOWN)
		return -ENODEV;

	wil_dbg_misc(wil, "Prevent DS in BL & mark FW to set T_POWER_ON=0\n");
	wil_s(wil, RGF_USER_USAGE_8, BIT_USER_PREVENT_DEEP_SLEEP |
	      BIT_USER_SUPPORT_T_POWER_ON_0);

	if (wil->platform_ops.notify) {
		rc = wil->platform_ops.notify(wil->platform_handle,
					      WIL_PLATFORM_EVT_PRE_RESET);
+3 −0
Original line number Diff line number Diff line
@@ -140,6 +140,9 @@ struct RGF_ICR {
#define RGF_USER_USAGE_1		(0x880004)
#define RGF_USER_USAGE_6		(0x880018)
	#define BIT_USER_OOB_MODE		BIT(31)
#define RGF_USER_USAGE_8		(0x880020)
	#define BIT_USER_PREVENT_DEEP_SLEEP	BIT(0)
	#define BIT_USER_SUPPORT_T_POWER_ON_0	BIT(1)
#define RGF_USER_HW_MACHINE_STATE	(0x8801dc)
	#define HW_MACHINE_BOOT_DONE	(0x3fffffd)
#define RGF_USER_USER_CPU_0		(0x8801e0)