Kconfig 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. config ARCH_HAS_DEVFREQ
  2. bool
  3. depends on ARCH_HAS_OPP
  4. help
  5. Denotes that the architecture supports DEVFREQ. If the architecture
  6. supports multiple OPP entries per device and the frequency of the
  7. devices with OPPs may be altered dynamically, the architecture
  8. supports DEVFREQ.
  9. menuconfig PM_DEVFREQ
  10. bool "Generic Dynamic Voltage and Frequency Scaling (DVFS) support"
  11. depends on PM_OPP && ARCH_HAS_DEVFREQ
  12. help
  13. With OPP support, a device may have a list of frequencies and
  14. voltages available. DEVFREQ, a generic DVFS framework can be
  15. registered for a device with OPP support in order to let the
  16. governor provided to DEVFREQ choose an operating frequency
  17. based on the OPP's list and the policy given with DEVFREQ.
  18. Each device may have its own governor and policy. DEVFREQ can
  19. reevaluate the device state periodically and/or based on the
  20. OPP list changes (each frequency/voltage pair in OPP may be
  21. disabled or enabled).
  22. Like some CPUs with CPUFREQ, a device may have multiple clocks.
  23. However, because the clock frequencies of a single device are
  24. determined by the single device's state, an instance of DEVFREQ
  25. is attached to a single device and returns a "representative"
  26. clock frequency from the OPP of the device, which is also attached
  27. to a device by 1-to-1. The device registering DEVFREQ takes the
  28. responsiblity to "interpret" the frequency listed in OPP and
  29. to set its every clock accordingly with the "target" callback
  30. given to DEVFREQ.
  31. if PM_DEVFREQ
  32. comment "DEVFREQ Governors"
  33. config DEVFREQ_GOV_SIMPLE_ONDEMAND
  34. bool "Simple Ondemand"
  35. help
  36. Chooses frequency based on the recent load on the device. Works
  37. similar as ONDEMAND governor of CPUFREQ does. A device with
  38. Simple-Ondemand should be able to provide busy/total counter
  39. values that imply the usage rate. A device may provide tuned
  40. values to the governor with data field at devfreq_add_device().
  41. config DEVFREQ_GOV_PERFORMANCE
  42. bool "Performance"
  43. help
  44. Sets the frequency at the maximum available frequency.
  45. This governor always returns UINT_MAX as frequency so that
  46. the DEVFREQ framework returns the highest frequency available
  47. at any time.
  48. config DEVFREQ_GOV_POWERSAVE
  49. bool "Powersave"
  50. help
  51. Sets the frequency at the minimum available frequency.
  52. This governor always returns 0 as frequency so that
  53. the DEVFREQ framework returns the lowest frequency available
  54. at any time.
  55. config DEVFREQ_GOV_USERSPACE
  56. bool "Userspace"
  57. help
  58. Sets the frequency at the user specified one.
  59. This governor returns the user configured frequency if there
  60. has been an input to /sys/devices/.../power/devfreq_set_freq.
  61. Otherwise, the governor does not change the frequnecy
  62. given at the initialization.
  63. comment "DEVFREQ Drivers"
  64. endif # PM_DEVFREQ