lpm-levels.txt 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. * Low Power Management Levels
  2. The application processor in MSM can do a variety of C-States for low power
  3. management. The LPM module performs the CPU and System low power modes based
  4. on it latency and residency information of the individual CPU/System low power
  5. levels.
  6. The first level node represents the properties of the system and includes
  7. second level node to represent the low power modes of cpu and system.
  8. [First Level Nodes]
  9. Required properties:
  10. - compatible: "qcom,lpm-levels"
  11. The optional nodes for the First level nodes are:
  12. - qcom,no-l2-saw: Indicates if this target has an L2 SAW (SPM and AVS wrapper).
  13. - qcom,default-l2-state: Indicates what the default low power state of the L2
  14. SAW should be. This property should be mentioned when there is
  15. a L2 saw.
  16. - qcom,allow-synced-levels: Indicates if certain low power modes should be
  17. synchronized across all cores so as to configure a system
  18. low power mode.
  19. [Second Level Nodes]
  20. Required properties to define CPU low power modes :
  21. - compatible = "qcom,cpu-modes";
  22. - qcom,mode: The sleep mode of the processor, values for the property are:
  23. "wfi" - Wait for Interrupt
  24. "retention" - Retention
  25. "standalone_pc" - Standalone power collapse
  26. "pc" - Power Collapse
  27. - qcom,latency-us: The latency in handling the interrupt if this level was
  28. chosen, in uSec
  29. - qcom,ss-power: The steady state power expelled when the processor is in this
  30. level in mWatts
  31. - qcom,energy-overhead: The energy used up in entering and exiting this level
  32. in mWatts.uSec
  33. - qcom,time-overhead: The time spent in entering and exiting this level in uS
  34. Required propertieis to define System low power mode :
  35. - compatible: "qcom,system-modes"
  36. - qcom,l2: The state of L2 cache. Values are:
  37. "l2_cache_pc" - L2 cache in power collapse
  38. "l2_cache_pc_no_rpm" - L2 cache in power collapse. This mode
  39. wouldn't inform the RPM
  40. "l2_cache_retenetion" - L2 cache in retention
  41. "l2_cache_gdhs" - L2 cache in GDHS
  42. "l2_cache_active" - L2 cache in active mode
  43. - qcom,latency-us: The latency in handling the interrupt if this level was
  44. chosen, in uSec
  45. - qcom,ss-power: The steady state power expelled when the processor is in this
  46. level in mWatts
  47. - qcom,energy-overhead: The energy used up in entering and exiting this level
  48. in mWatts.uSec
  49. - qcom,time-overhead: The time spent in entering and exiting this level in uS
  50. - qcom,min-cpu-mode: The min cpu sleep mode at which the given system level is
  51. valid. All cpus should have entered this low power mode before
  52. this system level can be chosen.
  53. - qcom,send-rpm-sleep-set: The system mode notifies RPM of Apps sleep and should
  54. send the current sleep set votes and configure MPM before
  55. entering this low power mode.
  56. Example:
  57. qcom,lpm-levels {
  58. compatible = "qcom,lpm-levels";
  59. qcom,default-l2-state = "l2_cache_retention";
  60. #address-cells = <1>;
  61. #size-cells = <1>;
  62. qcom,cpu-modes {
  63. compatible = "qcom,cpu-modes";
  64. qcom,cpu-mode@0 {
  65. qcom,mode = "wfi";
  66. qcom,latency-us = <1>;
  67. qcom,ss-power = <715>;
  68. qcom,energy-overhead = <17700>;
  69. qcom,time-overhead = <2>;
  70. };
  71. qcom,cpu-mode@1 {
  72. qcom,mode = "retention";
  73. qcom,latency-us = <35>;
  74. qcom,ss-power = <542>;
  75. qcom,energy-overhead = <34920>;
  76. qcom,time-overhead = <40>;
  77. };
  78. };
  79. qcom,system-modes {
  80. compatible = "qcom,system-modes";
  81. qcom,system-mode@0 {
  82. qcom,l2 = "l2_cache_gdhs";
  83. qcom,latency-us = <20000>;
  84. qcom,ss-power = <163>;
  85. qcom,energy-overhead = <1577736>;
  86. qcom,time-overhead = <5067>;
  87. };
  88. qcom,system-mode@1 {
  89. qcom,l2 = "l2_cache_pc";
  90. qcom,latency-us = <30000>;
  91. qcom,ss-power = <83>;
  92. qcom,energy-overhead = <2274420>;
  93. qcom,time-overhead = <6605>;
  94. };
  95. };
  96. };