mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-10 22:40:54 -04:00
qcacld-3.0: Add detection for tasklet delay
This is to enable feature for detection CE tasklet scheduling delay and credit response delay issue. Change-Id: I659aa23eabaa28bfb11051bf15e0343c94061b86 CRs-Fixed: 2874867
This commit is contained in:
parent
c063b59799
commit
ed682c0d9d
6 changed files with 37 additions and 0 deletions
8
Kbuild
8
Kbuild
|
|
@ -3734,6 +3734,14 @@ cppflags-$(CONFIG_DP_FT_LOCK_HISTORY) += -DDP_FT_LOCK_HISTORY
|
|||
|
||||
ccflags-$(CONFIG_GET_DRIVER_MODE) += -DFEATURE_GET_DRIVER_MODE
|
||||
|
||||
ifeq ($(CONFIG_SMP), y)
|
||||
ifeq ($(CONFIG_HIF_DETECTION_LATENCY_ENABLE), y)
|
||||
cppflags-y += -DHIF_DETECTION_LATENCY_ENABLE
|
||||
cppflags-y += -DDETECTION_TIMER_TIMEOUT=2000
|
||||
cppflags-y += -DDETECTION_LATENCY_THRESHOLD=1900
|
||||
endif
|
||||
endif
|
||||
|
||||
KBUILD_CPPFLAGS += $(cppflags-y)
|
||||
|
||||
# Currently, for versions of gcc which support it, the kernel Makefile
|
||||
|
|
|
|||
|
|
@ -862,6 +862,8 @@ pmo_core_enable_wow_in_fw(struct wlan_objmgr_psoc *psoc,
|
|||
pmo_debug("WOW enabled successfully in fw: credits:%d pending_cmds: %d",
|
||||
host_credits, wmi_pending_cmds);
|
||||
|
||||
hif_latency_detect_timer_stop(pmo_core_psoc_get_hif_handle(psoc));
|
||||
|
||||
pmo_core_update_wow_enable_cmd_sent(psoc_ctx, true);
|
||||
|
||||
out:
|
||||
|
|
@ -1448,6 +1450,8 @@ QDF_STATUS pmo_core_psoc_bus_resume_req(struct wlan_objmgr_psoc *psoc,
|
|||
goto out;
|
||||
}
|
||||
|
||||
hif_latency_detect_timer_start(pmo_core_psoc_get_hif_handle(psoc));
|
||||
|
||||
psoc_ctx = pmo_psoc_get_priv(psoc);
|
||||
wow_mode = pmo_core_is_wow_enabled(psoc_ctx);
|
||||
pmo_debug("wow mode %d", wow_mode);
|
||||
|
|
|
|||
|
|
@ -1037,6 +1037,7 @@ ifeq ($(CONFIG_SLUB_DEBUG_ON), y)
|
|||
CONFIG_UNIT_TEST := y
|
||||
CONFIG_REGISTER_OP_DEBUG := y
|
||||
CONFIG_ENABLE_QDF_PTR_HASH_DEBUG := y
|
||||
CONFIG_HIF_DETECTION_LATENCY_ENABLE := y
|
||||
endif
|
||||
|
||||
ifeq ($(CONFIG_UNIT_TEST), y)
|
||||
|
|
|
|||
|
|
@ -155,4 +155,20 @@ void hdd_set_hif_init_phase(struct hif_opaque_softc *hif_ctx,
|
|||
{
|
||||
}
|
||||
#endif /* FORCE_WAKE */
|
||||
|
||||
#ifdef HIF_DETECTION_LATENCY_ENABLE
|
||||
/**
|
||||
* hdd_hif_set_enable_detection() - enable detection
|
||||
* @hif_ctx: hif opaque handle
|
||||
* @value: enable/disable
|
||||
*
|
||||
* Return: None
|
||||
*/
|
||||
void hdd_hif_set_enable_detection(struct hif_opaque_softc *hif_ctx, bool value);
|
||||
#else
|
||||
static inline
|
||||
void hdd_hif_set_enable_detection(struct hif_opaque_softc *hif_ctx, bool value)
|
||||
{
|
||||
}
|
||||
#endif /* HIF_DETECTION_LATENCY_ENABLE */
|
||||
#endif /* __WLAN_HDD_DRIVER_OPS_H__ */
|
||||
|
|
|
|||
|
|
@ -230,6 +230,13 @@ static void hdd_hif_init_driver_state_callbacks(void *data,
|
|||
hdd_put_consistent_mem_unaligned;
|
||||
}
|
||||
|
||||
#ifdef HIF_DETECTION_LATENCY_ENABLE
|
||||
void hdd_hif_set_enable_detection(struct hif_opaque_softc *hif_ctx, bool value)
|
||||
{
|
||||
hif_set_enable_detection(hif_ctx, value);
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef FORCE_WAKE
|
||||
void hdd_set_hif_init_phase(struct hif_opaque_softc *hif_ctx,
|
||||
bool hal_init_phase)
|
||||
|
|
|
|||
|
|
@ -4091,6 +4091,7 @@ int hdd_wlan_start_modules(struct hdd_context *hdd_ctx, bool reinit)
|
|||
wlan_hdd_init_tx_rx_histogram(hdd_ctx);
|
||||
|
||||
hdd_set_hif_init_phase(hif_ctx, false);
|
||||
hdd_hif_set_enable_detection(hif_ctx, true);
|
||||
|
||||
break;
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue