123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118 |
- menuconfig PM_DEVFREQ
- bool "Generic Dynamic Voltage and Frequency Scaling (DVFS) support"
- select SRCU
- help
- A device may have a list of frequencies and voltages available.
- devfreq, a generic DVFS framework can be registered for a device
- in order to let the governor provided to devfreq choose an
- operating frequency based on the device driver's policy.
- Each device may have its own governor and policy. Devfreq can
- reevaluate the device state periodically and/or based on the
- notification to "nb", a notifier block, of devfreq.
- Like some CPUs with CPUfreq, a device may have multiple clocks.
- However, because the clock frequencies of a single device are
- determined by the single device's state, an instance of devfreq
- is attached to a single device and returns a "representative"
- clock frequency of the device, which is also attached
- to a device by 1-to-1. The device registering devfreq takes the
- responsibility to "interpret" the representative frequency and
- to set its every clock accordingly with the "target" callback
- given to devfreq.
- When OPP is used with the devfreq device, it is recommended to
- register devfreq's nb to the OPP's notifier head. If OPP is
- used with the devfreq device, you may use OPP helper
- functions defined in devfreq.h.
- if PM_DEVFREQ
- comment "DEVFREQ Governors"
- config DEVFREQ_GOV_SIMPLE_ONDEMAND
- tristate "Simple Ondemand"
- help
- Chooses frequency based on the recent load on the device. Works
- similar as ONDEMAND governor of CPUFREQ does. A device with
- Simple-Ondemand should be able to provide busy/total counter
- values that imply the usage rate. A device may provide tuned
- values to the governor with data field at devfreq_add_device().
- config DEVFREQ_GOV_PERFORMANCE
- tristate "Performance"
- help
- Sets the frequency at the maximum available frequency.
- This governor always returns UINT_MAX as frequency so that
- the DEVFREQ framework returns the highest frequency available
- at any time.
- config DEVFREQ_GOV_POWERSAVE
- tristate "Powersave"
- help
- Sets the frequency at the minimum available frequency.
- This governor always returns 0 as frequency so that
- the DEVFREQ framework returns the lowest frequency available
- at any time.
- config DEVFREQ_GOV_USERSPACE
- tristate "Userspace"
- help
- Sets the frequency at the user specified one.
- This governor returns the user configured frequency if there
- has been an input to /sys/devices/.../power/devfreq_set_freq.
- Otherwise, the governor does not change the frequency
- given at the initialization.
- config DEVFREQ_GOV_PASSIVE
- tristate "Passive"
- help
- Sets the frequency based on the frequency of its parent devfreq
- device. This governor does not change the frequency by itself
- through sysfs entries. The passive governor recommends that
- devfreq device uses the OPP table to get the frequency/voltage.
- comment "DEVFREQ Drivers"
- config ARM_EXYNOS_BUS_DEVFREQ
- tristate "ARM EXYNOS Generic Memory Bus DEVFREQ Driver"
- depends on ARCH_EXYNOS || COMPILE_TEST
- select DEVFREQ_GOV_SIMPLE_ONDEMAND
- select DEVFREQ_GOV_PASSIVE
- select DEVFREQ_EVENT_EXYNOS_PPMU
- select PM_DEVFREQ_EVENT
- select PM_OPP
- help
- This adds the common DEVFREQ driver for Exynos Memory bus. Exynos
- Memory bus has one more group of memory bus (e.g, MIF and INT block).
- Each memory bus group could contain many memoby bus block. It reads
- PPMU counters of memory controllers by using DEVFREQ-event device
- and adjusts the operating frequencies and voltages with OPP support.
- This does not yet operate with optimal voltages.
- config ARM_TEGRA_DEVFREQ
- tristate "Tegra DEVFREQ Driver"
- depends on ARCH_TEGRA_124_SOC
- select DEVFREQ_GOV_SIMPLE_ONDEMAND
- select PM_OPP
- help
- This adds the DEVFREQ driver for the Tegra family of SoCs.
- It reads ACTMON counters of memory controllers and adjusts the
- operating frequencies and voltages with OPP support.
- config ARM_RK3399_DMC_DEVFREQ
- tristate "ARM RK3399 DMC DEVFREQ Driver"
- depends on ARCH_ROCKCHIP
- select DEVFREQ_EVENT_ROCKCHIP_DFI
- select DEVFREQ_GOV_SIMPLE_ONDEMAND
- select PM_DEVFREQ_EVENT
- select PM_OPP
- help
- This adds the DEVFREQ driver for the RK3399 DMC(Dynamic Memory Controller).
- It sets the frequency for the memory controller and reads the usage counts
- from hardware.
- source "drivers/devfreq/event/Kconfig"
- endif # PM_DEVFREQ
|