Re: [PATCH v7 04/17] ARM64 / ACPI: Introduce early_param for "acpi" and pass acpi=force to enable ACPI

From: Ard Biesheuvel
Date: Mon Jan 19 2015 - 06:55:43 EST


On 19 January 2015 at 11:42, Catalin Marinas <catalin.marinas@xxxxxxx> wrote:
> On Wed, Jan 14, 2015 at 03:04:52PM +0000, Hanjun Guo wrote:
>> From: Al Stone <al.stone@xxxxxxxxxx>
>>
>> Introduce one early parameters "off" and "force" for "acpi", acpi=off
>> will be the default behavior for ARM64, so introduce acpi=force to
>> enable ACPI on ARM64.
>>
>> Disable ACPI before early parameters parsed, and enable it to pass
>> "acpi=force" if people want use ACPI on ARM64. This ensures DT be
>> the prefer one if ACPI table and DT both are provided at this moment.
> [...]
>> --- a/arch/arm64/kernel/setup.c
>> +++ b/arch/arm64/kernel/setup.c
>> @@ -62,6 +62,7 @@
>> #include <asm/memblock.h>
>> #include <asm/psci.h>
>> #include <asm/efi.h>
>> +#include <asm/acpi.h>
>>
>> unsigned int processor_id;
>> EXPORT_SYMBOL(processor_id);
>> @@ -388,6 +389,8 @@ void __init setup_arch(char **cmdline_p)
>> early_fixmap_init();
>> early_ioremap_init();
>>
>> + disable_acpi();
>> +
>> parse_early_param();
>>
>> /*
>
> Did we get to any conclusion here? DT being the preferred one is fine
> when both DT and ACPI are present but do we still want the kernel to
> ignore ACPI altogether if DT is not present? It's a bit harder to detect
> the presence of DT at this point since the EFI_STUB added one already. I
> guess we could move the "acpi=force" argument passing to EFI_STUB if no
> DT is present at boot.
>

Since the EFI stub populates the /chosen node in DT, I would prefer
for it to add a property there to indicate whether it created the DT
from scratch rather than adding ACPI specific stuff in there (even if
it is just a string to concatenate)

--
Ard.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/