summaryrefslogtreecommitdiff
path: root/drivers/cpuidle
diff options
context:
space:
mode:
authorPeter Boonstoppel <pboonstoppel@nvidia.com>2014-02-06 14:24:50 -0800
committerChao Xu <cxu@nvidia.com>2014-03-03 10:45:40 -0800
commit7a07d8589e9a9e7058097b551f981fa876a2d45f (patch)
tree85f232d991e9b9db716e9d2c46fdf39e6ea3bacd /drivers/cpuidle
parent9a2608d4c47b62537f31de5f93230ea032058163 (diff)
cpuidle: denver: Disable non-primary states on init
Deeper idle states should be explicitely enabled through sysfs Bug 1284794 Bug 1428014 Change-Id: I623809039d20011577fd34dfb21036690e40ed45 Signed-off-by: Peter Boonstoppel <pboonstoppel@nvidia.com> Reviewed-on: http://git-master/r/368919 Reviewed-by: Krishna Sitaraman <ksitaraman@nvidia.com> Tested-by: Krishna Sitaraman <ksitaraman@nvidia.com> Reviewed-by: Chao Xu <cxu@nvidia.com>
Diffstat (limited to 'drivers/cpuidle')
-rw-r--r--drivers/cpuidle/cpuidle-denver.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/drivers/cpuidle/cpuidle-denver.c b/drivers/cpuidle/cpuidle-denver.c
index c61610b01f07..2d48eba8ef0b 100644
--- a/drivers/cpuidle/cpuidle-denver.c
+++ b/drivers/cpuidle/cpuidle-denver.c
@@ -88,9 +88,16 @@ static int __init denver_power_states_init(void)
state->enter = denver_enter_c_state;
- /* Map index to the actual LP state */
- if (of_property_read_u32(child, "pmstate", &prop) != 0)
+ /* Bringup all states except clock gating in disabled mode */
+ if (of_property_read_u32(child, "pmstate", &prop) == 0) {
+ if (prop == 0)
+ state->disabled = false;
+ else
+ state->disabled = true;
+ } else
continue;
+
+ /* Map index to the actual LP state */
pmstate_map[state_count] = prop;
/* Create a debugfs node for the idle state */