From: Kevin Hilman on
Len Brown <lenb(a)kernel.org> writes:

> From: Len Brown <len.brown(a)intel.com>
>
> This EXPERIMENTAL driver supersedes acpi_idle
> on modern Intel processors. (Nehalem and Atom Processors).
>
> For CONFIG_INTEL_IDLE=y, intel_idle probes before acpi_idle,
> no matter if CONFIG_ACPI_PROCESSOR=y or =m.
>
> Boot with "intel_idle.max_cstate=0" to disable the driver
> and to fall back on ACPI.
>
> CONFIG_INTEL_IDLE=m is not recommended unless the system
> has a method to guarantee intel_idle loads before ACPI's
> processor_idle.
>
> This driver does not yet know about cpu online/offline
> and thus will not yet play well with cpu-hotplug.
>
> Signed-off-by: Len Brown <len.brown(a)intel.com>
> ---
> MAINTAINERS | 7 +
> drivers/Makefile | 2 +-
> drivers/acpi/processor_driver.c | 6 +-
> drivers/idle/Kconfig | 11 +
> drivers/idle/Makefile | 1 +
> drivers/idle/intel_idle.c | 446 +++++++++++++++++++++++++++++++++++++++

Any reason this arch-specific driver needs to be in drivers/idle
instead of under a platform specific dir like arch/x86?

On embedded SoCs that have never had ACPI, we have our
platform-specific CPUidle drivers in with the rest of our platform
specific code.

Kevin
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: Kevin Hilman on
Arjan van de Ven <arjan(a)infradead.org> writes:

> On Thu, 27 May 2010 07:14:46 -0700
> Kevin Hilman <khilman(a)deeprootsystems.com> wrote:
>
>> Len Brown <lenb(a)kernel.org> writes:
>>
>> > From: Len Brown <len.brown(a)intel.com>
>> >
>> > This EXPERIMENTAL driver supersedes acpi_idle
>> > on modern Intel processors. (Nehalem and Atom Processors).
>> >
>> > For CONFIG_INTEL_IDLE=y, intel_idle probes before acpi_idle,
>> > no matter if CONFIG_ACPI_PROCESSOR=y or =m.
>> >
>> > Boot with "intel_idle.max_cstate=0" to disable the driver
>> > and to fall back on ACPI.
>> >
>> > CONFIG_INTEL_IDLE=m is not recommended unless the system
>> > has a method to guarantee intel_idle loads before ACPI's
>> > processor_idle.
>> >
>> > This driver does not yet know about cpu online/offline
>> > and thus will not yet play well with cpu-hotplug.
>> >
>> > Signed-off-by: Len Brown <len.brown(a)intel.com>
>> > ---
>> > MAINTAINERS | 7 +
>> > drivers/Makefile | 2 +-
>> > drivers/acpi/processor_driver.c | 6 +-
>> > drivers/idle/Kconfig | 11 +
>> > drivers/idle/Makefile | 1 +
>> > drivers/idle/intel_idle.c | 446
>> > +++++++++++++++++++++++++++++++++++++++
>>
>> Any reason this arch-specific driver needs to be in drivers/idle
>> instead of under a platform specific dir like arch/x86?
>>
>> On embedded SoCs that have never had ACPI, we have our
>> platform-specific CPUidle drivers in with the rest of our platform
>> specific code.
>>
>
> it's really inconvenient to have such drivers hidden in the
> architecture code;

I'm not sure how puting architecture-specific code into an
architecture-specific directory is hiding it, but maybe I'm missing
something.

> it's much more convenient for cpuidle developers if they're all in
> one place.

So should we move all the embedded SoC specific CPUidle drivers into
drivers/idle too?

To me that would be much less convenient as I expect to maintain my
platform-specific CPUidle driver along with the rest of my
platform-specific code.

Kevin
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: Andi Kleen on
Len Brown <lenb(a)kernel.org> writes:

>> ... What happens when an additional CPU is brought online?
>> It melts? ;)
>
> With the current driver, processors hot-added after modprobe
> will use C1 only, and not use deeper C-states.

I agree with Andrew that it will likely not be a lot of
effort to restructure the driver to handle cpu hotplug
properly, and it's better done from the beginning.

-Andi

--
ak(a)linux.intel.com -- Speaking for myself only.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/