On Friday, 27 April 2007 12:19, Johannes Berg wrote: > On Fri, 2007-04-27 at 12:18 +0200, Rafael J. Wysocki wrote: > > > 1) We define platform_hibernation if CONFIG_ACPI is set. > > Let's just define it always then in the common code so we don't have > even more magic bits platforms need to define even if they don't care at > all. And please don't put #ifdef CONFIG_ACPI into the common code ;) > Maybe #ifdef CONFIG_ARCH_NEEDS_HIBERNATE_HOOKS or something. > > > 2) In the ACPI code we do > > > > if (can do S4) > > platform_hibernation = 1; > > Gotcha. > > > 3) We have functions arch_platform_prepare()/finish()/enter() that are defined > > to be noops for anything but ACPI systems and for ACPI systems they are > > defined like this: > > > > int arch_platform_enter(void) > > { > > if (!platform_hibernation) > > return 0; > > > > ... > > } > > > > I think it should work. > > You could reduce code churn in all other platforms by making these weak > symbols like the irq hooks I did for pm_ops. It looks like it can work > and possibly is even less intrusive than my hibernate_ops patch. Though > then again my hibernate_ops patch removed a lot of stuff that is now no > longer necessary, and also completely removed the PM_SUSPEND_DISK foo... > we probably want that regardless of how we invoke ACPI. Yes. Still, I'd like to rework your patch to deal with ACPI without introducing hibernate_ops . I'm going to do this later today if you don't mind. :-) Rafael _______________________________________________ linux-pm mailing list linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/linux-pm