Loading arch/arm/mach-highbank/pm.c +2 −2 Original line number Diff line number Diff line Loading @@ -42,12 +42,12 @@ static int highbank_suspend_finish(unsigned long val) static int highbank_pm_enter(suspend_state_t state) { cpu_pm_enter(); cpu_cluster_pm_enter(); cpu_cluster_pm_enter(0); highbank_set_cpu_jump(0, cpu_resume); cpu_suspend(0, highbank_suspend_finish); cpu_cluster_pm_exit(); cpu_cluster_pm_exit(0); cpu_pm_exit(); highbank_smc1(0x102, 0x1); Loading arch/arm/mach-omap2/cpuidle44xx.c +2 −2 Original line number Diff line number Diff line Loading @@ -124,7 +124,7 @@ static int omap_enter_idle_coupled(struct cpuidle_device *dev, */ if ((cx->mpu_state == PWRDM_POWER_RET) && (cx->mpu_logic_state == PWRDM_POWER_OFF)) cpu_cluster_pm_enter(); cpu_cluster_pm_enter(0); } omap4_enter_lowpower(dev->cpu, cx->cpu_state); Loading @@ -149,7 +149,7 @@ static int omap_enter_idle_coupled(struct cpuidle_device *dev, */ if ((cx->mpu_state == PWRDM_POWER_RET) && (cx->mpu_logic_state == PWRDM_POWER_OFF)) cpu_cluster_pm_exit(); cpu_cluster_pm_exit(0); clockevents_notify(CLOCK_EVT_NOTIFY_BROADCAST_EXIT, &cpu_id); Loading arch/arm/mach-tegra/pm.c +2 −2 Original line number Diff line number Diff line Loading @@ -143,13 +143,13 @@ void tegra_idle_lp2_last(void) { tegra_pmc_pm_set(TEGRA_SUSPEND_LP2); cpu_cluster_pm_enter(); cpu_cluster_pm_enter(0); suspend_cpu_complex(); cpu_suspend(PHYS_OFFSET - PAGE_OFFSET, &tegra_sleep_cpu); restore_cpu_complex(); cpu_cluster_pm_exit(); cpu_cluster_pm_exit(0); } enum tegra_suspend_mode tegra_pm_validate_suspend_mode( Loading drivers/cpuidle/lpm-levels-of.c +4 −1 Original line number Diff line number Diff line /* Copyright (c) 2014, The Linux Foundation. All rights reserved. /* Copyright (c) 2014, 2015, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and Loading Loading @@ -655,6 +655,7 @@ struct lpm_cluster *parse_cluster(struct device_node *node, list_add(&child->list, &c->child); cpumask_or(&c->child_cpus, &c->child_cpus, &child->child_cpus); c->aff_level = child->aff_level + 1; continue; } Loading @@ -670,6 +671,8 @@ struct lpm_cluster *parse_cluster(struct device_node *node, if (parse_cpu_levels(n, c)) goto failed_parse_cluster; c->aff_level = 1; } } Loading drivers/cpuidle/lpm-levels.c +5 −7 Original line number Diff line number Diff line /* Copyright (c) 2012-2014, The Linux Foundation. All rights reserved. /* Copyright (c) 2012-2015, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and Loading Loading @@ -473,9 +473,8 @@ static int cluster_configure(struct lpm_cluster *cluster, int idx, /* * Notify that the cluster is entering a low power mode */ if (level->mode[i] == MSM_SPM_MODE_POWER_COLLAPSE) { cpu_cluster_pm_enter(); } if (level->mode[i] == MSM_SPM_MODE_POWER_COLLAPSE) cpu_cluster_pm_enter(cluster->aff_level); } if (level->notify_rpm) { struct cpumask nextcpu; Loading Loading @@ -623,9 +622,8 @@ static void cluster_unprepare(struct lpm_cluster *cluster, BUG_ON(ret); if (cluster->levels[last_level].mode[i] == MSM_SPM_MODE_POWER_COLLAPSE) { cpu_cluster_pm_exit(); } MSM_SPM_MODE_POWER_COLLAPSE) cpu_cluster_pm_exit(cluster->aff_level); } unlock_return: spin_unlock(&cluster->sync_lock); Loading Loading
arch/arm/mach-highbank/pm.c +2 −2 Original line number Diff line number Diff line Loading @@ -42,12 +42,12 @@ static int highbank_suspend_finish(unsigned long val) static int highbank_pm_enter(suspend_state_t state) { cpu_pm_enter(); cpu_cluster_pm_enter(); cpu_cluster_pm_enter(0); highbank_set_cpu_jump(0, cpu_resume); cpu_suspend(0, highbank_suspend_finish); cpu_cluster_pm_exit(); cpu_cluster_pm_exit(0); cpu_pm_exit(); highbank_smc1(0x102, 0x1); Loading
arch/arm/mach-omap2/cpuidle44xx.c +2 −2 Original line number Diff line number Diff line Loading @@ -124,7 +124,7 @@ static int omap_enter_idle_coupled(struct cpuidle_device *dev, */ if ((cx->mpu_state == PWRDM_POWER_RET) && (cx->mpu_logic_state == PWRDM_POWER_OFF)) cpu_cluster_pm_enter(); cpu_cluster_pm_enter(0); } omap4_enter_lowpower(dev->cpu, cx->cpu_state); Loading @@ -149,7 +149,7 @@ static int omap_enter_idle_coupled(struct cpuidle_device *dev, */ if ((cx->mpu_state == PWRDM_POWER_RET) && (cx->mpu_logic_state == PWRDM_POWER_OFF)) cpu_cluster_pm_exit(); cpu_cluster_pm_exit(0); clockevents_notify(CLOCK_EVT_NOTIFY_BROADCAST_EXIT, &cpu_id); Loading
arch/arm/mach-tegra/pm.c +2 −2 Original line number Diff line number Diff line Loading @@ -143,13 +143,13 @@ void tegra_idle_lp2_last(void) { tegra_pmc_pm_set(TEGRA_SUSPEND_LP2); cpu_cluster_pm_enter(); cpu_cluster_pm_enter(0); suspend_cpu_complex(); cpu_suspend(PHYS_OFFSET - PAGE_OFFSET, &tegra_sleep_cpu); restore_cpu_complex(); cpu_cluster_pm_exit(); cpu_cluster_pm_exit(0); } enum tegra_suspend_mode tegra_pm_validate_suspend_mode( Loading
drivers/cpuidle/lpm-levels-of.c +4 −1 Original line number Diff line number Diff line /* Copyright (c) 2014, The Linux Foundation. All rights reserved. /* Copyright (c) 2014, 2015, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and Loading Loading @@ -655,6 +655,7 @@ struct lpm_cluster *parse_cluster(struct device_node *node, list_add(&child->list, &c->child); cpumask_or(&c->child_cpus, &c->child_cpus, &child->child_cpus); c->aff_level = child->aff_level + 1; continue; } Loading @@ -670,6 +671,8 @@ struct lpm_cluster *parse_cluster(struct device_node *node, if (parse_cpu_levels(n, c)) goto failed_parse_cluster; c->aff_level = 1; } } Loading
drivers/cpuidle/lpm-levels.c +5 −7 Original line number Diff line number Diff line /* Copyright (c) 2012-2014, The Linux Foundation. All rights reserved. /* Copyright (c) 2012-2015, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and Loading Loading @@ -473,9 +473,8 @@ static int cluster_configure(struct lpm_cluster *cluster, int idx, /* * Notify that the cluster is entering a low power mode */ if (level->mode[i] == MSM_SPM_MODE_POWER_COLLAPSE) { cpu_cluster_pm_enter(); } if (level->mode[i] == MSM_SPM_MODE_POWER_COLLAPSE) cpu_cluster_pm_enter(cluster->aff_level); } if (level->notify_rpm) { struct cpumask nextcpu; Loading Loading @@ -623,9 +622,8 @@ static void cluster_unprepare(struct lpm_cluster *cluster, BUG_ON(ret); if (cluster->levels[last_level].mode[i] == MSM_SPM_MODE_POWER_COLLAPSE) { cpu_cluster_pm_exit(); } MSM_SPM_MODE_POWER_COLLAPSE) cpu_cluster_pm_exit(cluster->aff_level); } unlock_return: spin_unlock(&cluster->sync_lock); Loading