[PATCH] sched: Provide USF for the portable equipment.

From: Dongdong Yang
Date: Thu Jul 30 2020 - 10:08:07 EST


From: Dongdong Yang <yangdongdong@xxxxxxxxxx>

This patch provides USF(User Sensitive Feedback factor)
auxiliary cpufreq governor to support high level layer
sysfs inodes setting for utils adjustment purpose from
the identified scenario on portable equipment.
Because the power consumption and UI response are more
cared for by portable equipmentÂusers. And the "screen
off" status stands for no request from the user, however,
the kernel is still expected to notify the user in time
on modem, network or powerkey events occur. USF provides
"sched_usf_non_ux_r" sysfs inode to cut down the utils
from user space tasks according to high level scenario.
In addition, it usually hints more cpufreq demand that
the preemptive counts of the tasks on the cpu burst and
over the user expecting completed time such as the ratio
sysctl_sched_latency to sysctl_sched_min_granularity
on "screen on" status, which more likely with more UI.
The sysfs inodes "sched_usf_up_l0_r" and "sched_usf_down_r"
have been provided to adjust the utils according to high
level identified scenario to alloc the cpufreq in time.

Dongdong Yang (1):
sched: Provide USF for portable equipment.

drivers/staging/Kconfig | 2 +
drivers/staging/Makefile | 1 +
drivers/staging/fbsched/Kconfig | 10 ++
drivers/staging/fbsched/Makefile | 2 +
drivers/staging/fbsched/usf.c | 351 +++++++++++++++++++++++++++++++++++++++
kernel/sched/cpufreq_schedutil.c | 11 +-
6 files changed, 376 insertions(+), 1 deletion(-)
create mode 100644 drivers/staging/fbsched/Kconfig
create mode 100644 drivers/staging/fbsched/Makefile
create mode 100644 drivers/staging/fbsched/usf.c

--
2.7.4