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 -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html