Hi Sudeep,

On 4/19/2016 6:30 AM, Sudeep Holla wrote:
> +struct acpi_processor_lpi *lpi;
> +int acpi_processor_ffh_lpi_enter(struct acpi_processor_lpi *lpi, int idx)
> +{
> +     int ret;
> +
> +     if (!idx) {
> +             cpu_do_idle();
> +             return idx;
> +     }
> +
> +     /* TODO cpu_pm_{enter,exit} can be done in generic code ? */
> +     ret = cpu_pm_enter();
Can we avoid calling cpu_pm_enter and cpu_pm_exit for retention states as it is 
not necessary?
May be we can check LPI architecture specific context loss flags prior to 
calling these.
> +     if (!ret) {
> +             /*
> +              * Pass idle state index to cpu_suspend which in turn will
> +              * call the CPU ops suspend protocol with idle index as a
> +              * parameter.
> +              */
> +             ret = arm_cpuidle_suspend(idx);
> +
> +             cpu_pm_exit();
same here
> +     }
> +
> +     return ret ? -1 : idx;
> +}
> +

By the way, thanks for posting these patches!

-Prashanth

Reply via email to