CPUidle already has CPUIDLE_FLAG_OFF to keep idle state disabled, Lets extend the support to set this flag using device tree. This allows to keep an idle state disabled and they can be enabled back using sysfs after certain point using below command. echo N > /sys/devices/system/cpu/cpuX/cpuidle/stateX/disable This helps in cases where vendors want to keep cpuidle off until home screen comes up. In the past attempt was done at [1] but it was not considered safe option to export cpu_idle_poll_ctrl(). [1] https://patchwork.kernel.org/project/linux-arm-msm/patch/1637831676-32737-1-git-send-email-quic_mkshah@xxxxxxxxxxx/ Thanks, Tushar Nimkar. Tushar Nimkar (2): dt-bindings: cpu: idle-states: Add idle-state-disabled property cpuidle: dt: Add support to keep idle state disabled Documentation/devicetree/bindings/cpu/idle-states.yaml | 8 ++++++++ drivers/cpuidle/dt_idle_states.c | 3 +++ 2 files changed, 11 insertions(+) -- 2.17.1