Files
linux-nv-oot/drivers/devfreq/Kconfig
Aaron Tian 008fd60935 devfreq: introduce DEVFREQ_GOV_POD_SCALING_V2
Introduce DEVFREQ_GOV_POD_SCALING_V2 for podgov
governor implementation on kernel-5.9 and later
version to address major changes in upstream
devfreq framework.

1. devfreq framework uses devm_pm_qos to store
   "min/max frequency request from user-space",
   which caused 'min_freq' & 'max_freq' field
   in struct devfreq have been removed.
2. DEVFREQ_GOV_INTERVAL renamed as DEVFREQ_GOV_UPDATE_INTERVAL, and
   devfreq_interval_update() renamed as devfreq_update_interval()
3. return type of debugfs_create_u32() changed to void

Bug 200639056

Change-Id: I673ae3ac6b55b26766253ae0f1aeba181e2e0b53
Signed-off-by: Aaron Tian <atian@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2400108
Reviewed-by: automaticguardword <automaticguardword@nvidia.com>
Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
2023-04-04 05:18:03 +00:00

49 lines
1.8 KiB
Plaintext

if PM_DEVFREQ
comment "NVIDIA DEVFREQ Governors"
config DEVFREQ_GOV_POD_SCALING
tristate "Power On Demand Scaling"
help
Sets the frequency based on two properties:
(1) The governor receives activity throughput hints that
indicate whether scaling up or down is required
(2) the load of the devices is estimated using busy times
from device profile to determine if the frequency should
be altered.
config DEVFREQ_GOV_POD_SCALING_V2
tristate "Power On Demand Scaling v2"
help
Sets the frequency based on two properties:
(1) The governor receives activity throughput hints that
indicate whether scaling up or down is required
(2) the load of the devices is estimated using busy times
from device profile to determine if the frequency should
be altered.
Used with kernel-5.9 and later version
config DEVFREQ_GOV_POD_SCALING_HISTORY_BUFFER_SIZE_MAX
int
default 100
config DEVFREQ_GOV_WMARK_SIMPLE
tristate "Simple Watermark"
help
Sets the frequency based on monitor watermark events.
This governor returns the next frequency from frequency table
based on type watermark event.
config DEVFREQ_GOV_WMARK_ACTIVE
tristate "Active Watermark"
help
Sets the frequency based on monitor watermark events.
This governor calculates relation between current load and
target load. The next frequency is calculated by multiplying
this relation with the current frequency.
The watermark values are updated so that the watermarks are
triggered when the above algorithm would change the frequency.
endif # PM_DEVFREQ