xref: /openbmc/linux/drivers/devfreq/Kconfig (revision a3c98b8b)
1a3c98b8bSMyungJoo Hamconfig ARCH_HAS_DEVFREQ
2a3c98b8bSMyungJoo Ham	bool
3a3c98b8bSMyungJoo Ham	depends on ARCH_HAS_OPP
4a3c98b8bSMyungJoo Ham	help
5a3c98b8bSMyungJoo Ham	  Denotes that the architecture supports DEVFREQ. If the architecture
6a3c98b8bSMyungJoo Ham	  supports multiple OPP entries per device and the frequency of the
7a3c98b8bSMyungJoo Ham	  devices with OPPs may be altered dynamically, the architecture
8a3c98b8bSMyungJoo Ham	  supports DEVFREQ.
9a3c98b8bSMyungJoo Ham
10a3c98b8bSMyungJoo Hammenuconfig PM_DEVFREQ
11a3c98b8bSMyungJoo Ham	bool "Generic Dynamic Voltage and Frequency Scaling (DVFS) support"
12a3c98b8bSMyungJoo Ham	depends on PM_OPP && ARCH_HAS_DEVFREQ
13a3c98b8bSMyungJoo Ham	help
14a3c98b8bSMyungJoo Ham	  With OPP support, a device may have a list of frequencies and
15a3c98b8bSMyungJoo Ham	  voltages available. DEVFREQ, a generic DVFS framework can be
16a3c98b8bSMyungJoo Ham	  registered for a device with OPP support in order to let the
17a3c98b8bSMyungJoo Ham	  governor provided to DEVFREQ choose an operating frequency
18a3c98b8bSMyungJoo Ham	  based on the OPP's list and the policy given with DEVFREQ.
19a3c98b8bSMyungJoo Ham
20a3c98b8bSMyungJoo Ham	  Each device may have its own governor and policy. DEVFREQ can
21a3c98b8bSMyungJoo Ham	  reevaluate the device state periodically and/or based on the
22a3c98b8bSMyungJoo Ham	  OPP list changes (each frequency/voltage pair in OPP may be
23a3c98b8bSMyungJoo Ham	  disabled or enabled).
24a3c98b8bSMyungJoo Ham
25a3c98b8bSMyungJoo Ham	  Like some CPUs with CPUFREQ, a device may have multiple clocks.
26a3c98b8bSMyungJoo Ham	  However, because the clock frequencies of a single device are
27a3c98b8bSMyungJoo Ham	  determined by the single device's state, an instance of DEVFREQ
28a3c98b8bSMyungJoo Ham	  is attached to a single device and returns a "representative"
29a3c98b8bSMyungJoo Ham	  clock frequency from the OPP of the device, which is also attached
30a3c98b8bSMyungJoo Ham	  to a device by 1-to-1. The device registering DEVFREQ takes the
31a3c98b8bSMyungJoo Ham	  responsiblity to "interpret" the frequency listed in OPP and
32a3c98b8bSMyungJoo Ham	  to set its every clock accordingly with the "target" callback
33a3c98b8bSMyungJoo Ham	  given to DEVFREQ.
34a3c98b8bSMyungJoo Ham
35a3c98b8bSMyungJoo Hamif PM_DEVFREQ
36a3c98b8bSMyungJoo Ham
37a3c98b8bSMyungJoo Hamcomment "DEVFREQ Drivers"
38a3c98b8bSMyungJoo Ham
39a3c98b8bSMyungJoo Hamendif # PM_DEVFREQ
40