Topics

RFC: 1/5 Consistent naming of PM Kconfig flags (Revised)


Thomas, Ramesh
 

[Revised incorporating feedbacks so far]

Problem Statement:
Power management Kconfig flags are not consistent and hierarchy is not
clear

Why this is a problem:
-----------------------------
The names include terms like “ADVANCED” which are not meaningful to
current implementation. Names do not specifically identify features that
are enabled by the flag. There are redundancies and overlaps in flags
and the hierarchy is not clear.

What should be done:
------------------------------
Change as follows :

ADVANCED_POWER_MANAGEMENT -> SYS_POWER_MANAGEMENT (turn on the basics
of power management)

ADVANCED_IDLE -> SYS_POWER_LPS (enables the kernel
for Low power state)
-> SYS_POWER_DEEP_SLEEP (enables the kernel for
Deep Sleep)

New addition -> DEVICE_POWER_MANAGEMENT (enables device power
management infrastructure)

ADVANCED_IDLE_SUPPORTED -> SYS_POWER_LPS_SUPPORTED (enables
SYS_POWER_LPS option)
-> SYS_POWER_DEEP_SLEEP_SUPPORTED (enables
SYS_POWER_DEEP_SLEEP option)

The new flags with the dependency hierarchy will be as follows:

SYS_POWER_MANAGEMENT
|
|___SYS_POWER_LPS
|
|___SYS_POWER_DEEP_SLEEP
|
|___DEVICE_POWER_MANAGEMENT