diff --git a/Kbuild b/Kbuild index fcd537b786fc..157c6961fb19 100644 --- a/Kbuild +++ b/Kbuild @@ -2167,12 +2167,18 @@ endif ifeq ($(CONFIG_ARCH_MSM8996), y) CONFIG_FEATURE_SG := y +CONFIG_RX_THREAD_PRIORITY := y endif ifeq ($(CONFIG_FEATURE_SG), y) cppflags-y += -DFEATURE_SG endif +ifeq ($(CONFIG_RX_THREAD_PRIORITY), y) +cppflags-y += -DRX_THREAD_PRIORITY +endif + + #Enable wbuff cppflags-$(CONFIG_WLAN_WBUFF) += -DWLAN_FEATURE_WBUFF diff --git a/core/cds/src/cds_sched.c b/core/cds/src/cds_sched.c index cfcb2c8870bc..7f981c5d3855 100644 --- a/core/cds/src/cds_sched.c +++ b/core/cds/src/cds_sched.c @@ -691,7 +691,15 @@ static int cds_ol_rx_thread(void *arg) bool shutdown = false; int status; +#ifdef RX_THREAD_PRIORITY + struct sched_param scheduler_params = {0}; + + scheduler_params.sched_priority = 1; + sched_setscheduler(current, SCHED_FIFO, &scheduler_params); +#else set_user_nice(current, -1); +#endif + #ifdef MSM_PLATFORM set_wake_up_idle(true); #endif