On 11/25/2013 08:30 AM, Matthew Garrett wrote:
On Mon, Nov 25, 2013 at 05:10:46AM +0000, Zheng, Lv wrote:
From: linux-acpi-owner@vger.kernel.org [mailto:linux-acpi-owner@vger.kernel.org] On Behalf Of Matthew Garrett Ugh. Really? People have been fairly careful about making sure that the x86 SoC code is selected correctly at runtime, and losing that because ACPICA is broken would be a shame. I think this is something that needs to support runtime switching even if there's also support for building kernels that only implement the reduced hardware profile.
If my reading is correct, do you mean x86 SoCs should have already tested the code.
I don't know if anyone has deployed x86 SoCs with reduced hardware yet, but it seems like something that might happen.
So if ARM need ACPI_REDUCED_HARDWARE to be defined, the <include/acpi/platform/aclinux.h> should have lines like: #ifdef CONFIG_ARCH_IS_ACPI_REDUCED_HARDWARE #define ACPI_REDUCED_HARDWARE TRUE #endif And ARCH_IS_ACPI_REDUCED_HARDWARE should only be selected by CONFIG_ARM.
Is ACPI_REDUCED_HARDWARE supposed to indicate support for the reduced hardware profile, or that the platform *only* implements the reduced hardware profile?
From what I can see in ACPICA, ACPI_REDUCED_HARDWARE indicates the platform *only* implements the reduced hardware profile. This *seems* to be consistent with the specification -- see 3.11.1, second bullet, for example:
Boot in ACPI mode only (ACPI Enable, ACPI Disable, SMI_CMD and Legacy mode are not supported)
...if by "not supported" one takes that to mean "does not exist when compiled." I can look at the ACPICA code again, just the same; perhaps there is some reasonable way to at least select one or the other at boot as the first step, and then allow switching between modes as a later step.
To Lv's point, since hardware reduced mode was added in ACPI 5.0, I don't think there has been a lot of exposure to it, especially on working platforms on the Linux side, so I doubt there has been any significant Linux testing of it until now.