Kconfig 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. # SPDX-License-Identifier: GPL-2.0-only
  2. #
  3. # Generic power capping sysfs interface configuration
  4. #
  5. menuconfig POWERCAP
  6. bool "Generic powercap sysfs driver"
  7. help
  8. The power capping sysfs interface allows kernel subsystems to expose power
  9. capping settings to user space in a consistent way. Usually, it consists
  10. of multiple control types that determine which settings may be exposed and
  11. power zones representing parts of the system that can be subject to power
  12. capping.
  13. If you want this code to be compiled in, say Y here.
  14. if POWERCAP
  15. # Client driver configurations go here.
  16. config INTEL_RAPL_CORE
  17. tristate
  18. depends on PCI
  19. select IOSF_MBI
  20. config INTEL_RAPL
  21. tristate "Intel RAPL Support via MSR Interface"
  22. depends on X86 && PCI
  23. select INTEL_RAPL_CORE
  24. help
  25. This enables support for the Intel Running Average Power Limit (RAPL)
  26. technology via MSR interface, which allows power limits to be enforced
  27. and monitored on modern Intel processors (Sandy Bridge and later).
  28. In RAPL, the platform level settings are divided into domains for
  29. fine grained control. These domains include processor package, DRAM
  30. controller, CPU core (Power Plane 0), graphics uncore (Power Plane
  31. 1), etc.
  32. config INTEL_RAPL_TPMI
  33. tristate "Intel RAPL Support via TPMI Interface"
  34. depends on X86
  35. depends on INTEL_TPMI
  36. select INTEL_RAPL_CORE
  37. help
  38. This enables support for the Intel Running Average Power Limit (RAPL)
  39. technology via TPMI interface, which allows power limits to be enforced
  40. and monitored.
  41. In RAPL, the platform level settings are divided into domains for
  42. fine grained control. These domains include processor package, DRAM
  43. controller, platform, etc.
  44. config IDLE_INJECT
  45. bool "Idle injection framework"
  46. depends on CPU_IDLE
  47. default n
  48. help
  49. This enables support for the idle injection framework. It
  50. provides a way to force idle periods on a set of specified
  51. CPUs for power capping. Idle period can be injected
  52. synchronously on a set of specified CPUs or alternatively
  53. on a per CPU basis.
  54. config ARM_SCMI_POWERCAP
  55. tristate "ARM SCMI Powercap driver"
  56. depends on ARM_SCMI_PROTOCOL
  57. help
  58. This enables support for the ARM Powercap based on ARM SCMI
  59. Powercap protocol.
  60. ARM SCMI Powercap protocol allows power limits to be enforced
  61. and monitored against the SCMI Powercap domains advertised as
  62. available by the SCMI platform firmware.
  63. When compiled as module it will be called arm_scmi_powercap.ko.
  64. config DTPM
  65. bool "Power capping for Dynamic Thermal Power Management (EXPERIMENTAL)"
  66. depends on OF
  67. help
  68. This enables support for the power capping for the dynamic
  69. thermal power management userspace engine.
  70. config DTPM_CPU
  71. bool "Add CPU power capping based on the energy model"
  72. depends on DTPM && ENERGY_MODEL
  73. help
  74. This enables support for CPU power limitation based on
  75. energy model.
  76. config DTPM_DEVFREQ
  77. bool "Add device power capping based on the energy model"
  78. depends on DTPM && ENERGY_MODEL
  79. help
  80. This enables support for device power limitation based on
  81. energy model.
  82. endif