Message ID | 1363868494-5503-2-git-send-email-daniel.lezcano@linaro.org |
---|---|
State | New |
Headers | show |
$subject s/'cpuidle/omap4' /ARM: CPUidle: OMAP4: On Thursday 21 March 2013 05:51 PM, Daniel Lezcano wrote: > Use the CPUIDLE_FLAG_TIMER_STOP and let the cpuidle framework > to handle the CLOCK_EVT_NOTIFY_BROADCAST_ENTER/EXIT when entering > this state. > > Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org> > Cc: Len Brown <lenb@kernel.org> > Cc: Linus Walleij <linus.walleij@linaro.org> > Cc: Santosh Shilimkar <santosh.shilimkar@ti.com> > Cc: Rajendra Nayak <rnayak@ti.com> > Cc: Sascha Hauer <kernel@pengutronix.de> > Cc: Thomas Gleixner <tglx@linutronix.de> > --- Otherwise Akced-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
On Thursday 21 March 2013 06:31 PM, Santosh Shilimkar wrote: > $subject > s/'cpuidle/omap4' /ARM: CPUidle: OMAP4: > > On Thursday 21 March 2013 05:51 PM, Daniel Lezcano wrote: >> Use the CPUIDLE_FLAG_TIMER_STOP and let the cpuidle framework >> to handle the CLOCK_EVT_NOTIFY_BROADCAST_ENTER/EXIT when entering >> this state. >> >> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org> >> Cc: Len Brown <lenb@kernel.org> >> Cc: Linus Walleij <linus.walleij@linaro.org> >> Cc: Santosh Shilimkar <santosh.shilimkar@ti.com> >> Cc: Rajendra Nayak <rnayak@ti.com> >> Cc: Sascha Hauer <kernel@pengutronix.de> >> Cc: Thomas Gleixner <tglx@linutronix.de> >> --- > Otherwise > Akced-by: Santosh Shilimkar <santosh.shilimkar@ti.com> > One more comment for this patch as well as imx and ux500 one. Remove "#include <linux/clockchips.h>" since it is not needed anymore. Regards, Santosh
On 03/21/2013 02:05 PM, Santosh Shilimkar wrote: > On Thursday 21 March 2013 06:31 PM, Santosh Shilimkar wrote: >> $subject >> s/'cpuidle/omap4' /ARM: CPUidle: OMAP4: >> >> On Thursday 21 March 2013 05:51 PM, Daniel Lezcano wrote: >>> Use the CPUIDLE_FLAG_TIMER_STOP and let the cpuidle framework >>> to handle the CLOCK_EVT_NOTIFY_BROADCAST_ENTER/EXIT when entering >>> this state. >>> >>> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org> >>> Cc: Len Brown <lenb@kernel.org> >>> Cc: Linus Walleij <linus.walleij@linaro.org> >>> Cc: Santosh Shilimkar <santosh.shilimkar@ti.com> >>> Cc: Rajendra Nayak <rnayak@ti.com> >>> Cc: Sascha Hauer <kernel@pengutronix.de> >>> Cc: Thomas Gleixner <tglx@linutronix.de> >>> --- >> Otherwise >> Akced-by: Santosh Shilimkar <santosh.shilimkar@ti.com> >> > One more comment for this patch as well as imx and ux500 one. > > Remove "#include <linux/clockchips.h>" since it is not needed > anymore. Actually, it is still needed for: omap_setup_broadcast_timer imx6q_setup_broadcast_timer ux500_setup_broadcast_timer I am preparing another round of patches to move these initialization to the cpuidle framework but I have to take into account the multiple drivers support which could be impacted, this is why it is a separated patchset.
On Thursday 21 March 2013 06:44 PM, Daniel Lezcano wrote: > On 03/21/2013 02:05 PM, Santosh Shilimkar wrote: >> On Thursday 21 March 2013 06:31 PM, Santosh Shilimkar wrote: >>> $subject >>> s/'cpuidle/omap4' /ARM: CPUidle: OMAP4: >>> >>> On Thursday 21 March 2013 05:51 PM, Daniel Lezcano wrote: >>>> Use the CPUIDLE_FLAG_TIMER_STOP and let the cpuidle framework >>>> to handle the CLOCK_EVT_NOTIFY_BROADCAST_ENTER/EXIT when entering >>>> this state. >>>> >>>> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org> >>>> Cc: Len Brown <lenb@kernel.org> >>>> Cc: Linus Walleij <linus.walleij@linaro.org> >>>> Cc: Santosh Shilimkar <santosh.shilimkar@ti.com> >>>> Cc: Rajendra Nayak <rnayak@ti.com> >>>> Cc: Sascha Hauer <kernel@pengutronix.de> >>>> Cc: Thomas Gleixner <tglx@linutronix.de> >>>> --- >>> Otherwise >>> Akced-by: Santosh Shilimkar <santosh.shilimkar@ti.com> >>> >> One more comment for this patch as well as imx and ux500 one. >> >> Remove "#include <linux/clockchips.h>" since it is not needed >> anymore. > > Actually, it is still needed for: > > omap_setup_broadcast_timer > imx6q_setup_broadcast_timer > ux500_setup_broadcast_timer > Indeed !! > I am preparing another round of patches to move these initialization to > the cpuidle framework but I have to take into account the multiple > drivers support which could be impacted, this is why it is a separated > patchset. > fair enough. Regards, Santosh
Daniel Lezcano <daniel.lezcano@linaro.org> writes: > Use the CPUIDLE_FLAG_TIMER_STOP and let the cpuidle framework > to handle the CLOCK_EVT_NOTIFY_BROADCAST_ENTER/EXIT when entering > this state. > > Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org> > Cc: Len Brown <lenb@kernel.org> > Cc: Linus Walleij <linus.walleij@linaro.org> > Cc: Santosh Shilimkar <santosh.shilimkar@ti.com> > Cc: Rajendra Nayak <rnayak@ti.com> > Cc: Sascha Hauer <kernel@pengutronix.de> > Cc: Thomas Gleixner <tglx@linutronix.de> OMAP changes look good. Reviewed-by: Kevin Hilman <khilman@linaro.org>
diff --git a/arch/arm/mach-omap2/cpuidle44xx.c b/arch/arm/mach-omap2/cpuidle44xx.c index d639aef..fe0e025 100644 --- a/arch/arm/mach-omap2/cpuidle44xx.c +++ b/arch/arm/mach-omap2/cpuidle44xx.c @@ -82,7 +82,6 @@ static int omap4_enter_idle_coupled(struct cpuidle_device *dev, int index) { struct omap4_idle_statedata *cx = &omap4_idle_data[index]; - int cpu_id = smp_processor_id(); local_fiq_disable(); @@ -109,8 +108,6 @@ static int omap4_enter_idle_coupled(struct cpuidle_device *dev, } } - clockevents_notify(CLOCK_EVT_NOTIFY_BROADCAST_ENTER, &cpu_id); - /* * Call idle CPU PM enter notifier chain so that * VFP and per CPU interrupt context is saved. @@ -152,8 +149,6 @@ static int omap4_enter_idle_coupled(struct cpuidle_device *dev, if (omap4_mpuss_read_prev_context_state()) cpu_cluster_pm_exit(); - clockevents_notify(CLOCK_EVT_NOTIFY_BROADCAST_EXIT, &cpu_id); - fail: cpuidle_coupled_parallel_barrier(dev, &abort_barrier); cpu_done[dev->cpu] = false; @@ -193,7 +188,8 @@ static struct cpuidle_driver omap4_idle_driver = { /* C2 - CPU0 OFF + CPU1 OFF + MPU CSWR */ .exit_latency = 328 + 440, .target_residency = 960, - .flags = CPUIDLE_FLAG_TIME_VALID | CPUIDLE_FLAG_COUPLED, + .flags = CPUIDLE_FLAG_TIME_VALID | CPUIDLE_FLAG_COUPLED | + CPUIDLE_FLAG_TIMER_STOP, .enter = omap4_enter_idle_coupled, .name = "C2", .desc = "MPUSS CSWR", @@ -202,7 +198,8 @@ static struct cpuidle_driver omap4_idle_driver = { /* C3 - CPU0 OFF + CPU1 OFF + MPU OSWR */ .exit_latency = 460 + 518, .target_residency = 1100, - .flags = CPUIDLE_FLAG_TIME_VALID | CPUIDLE_FLAG_COUPLED, + .flags = CPUIDLE_FLAG_TIME_VALID | CPUIDLE_FLAG_COUPLED | + CPUIDLE_FLAG_TIMER_STOP, .enter = omap4_enter_idle_coupled, .name = "C3", .desc = "MPUSS OSWR",
Use the CPUIDLE_FLAG_TIMER_STOP and let the cpuidle framework to handle the CLOCK_EVT_NOTIFY_BROADCAST_ENTER/EXIT when entering this state. Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org> Cc: Len Brown <lenb@kernel.org> Cc: Linus Walleij <linus.walleij@linaro.org> Cc: Santosh Shilimkar <santosh.shilimkar@ti.com> Cc: Rajendra Nayak <rnayak@ti.com> Cc: Sascha Hauer <kernel@pengutronix.de> Cc: Thomas Gleixner <tglx@linutronix.de> --- arch/arm/mach-omap2/cpuidle44xx.c | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-)