[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5500EFFF.2070807@huawei.com>
Date: Thu, 12 Mar 2015 09:46:39 +0800
From: Hanjun Guo <guohanjun@...wei.com>
To: Jason Cooper <jason@...edaemon.net>,
Grant Likely <grant.likely@...aro.org>
CC: Mark Rutland <mark.rutland@....com>,
linaro-acpi <linaro-acpi@...ts.linaro.org>,
Catalin Marinas <catalin.marinas@....com>,
Will Deacon <will.deacon@....com>,
Lorenzo Pieralisi <Lorenzo.Pieralisi@....com>,
Timur Tabi <timur@...eaurora.org>,
"ACPI Devel Mailing List" <linux-acpi@...r.kernel.org>,
Robert Richter <rric@...nel.org>,
Arnd Bergmann <arnd@...db.de>,
Marc Zyngier <marc.zyngier@....com>,
"Jon Masters" <jcm@...hat.com>,
Tomasz Nowicki <tomasz.nowicki@...aro.org>,
"Mark Brown" <broonie@...nel.org>,
Thomas Gleixner <tglx@...utronix.de>,
<linux-arm-kernel@...ts.infradead.org>,
Graeme Gregory <graeme.gregory@...aro.org>,
Ashwin Chaugule <ashwinc@...eaurora.org>,
"Rafael J. Wysocki" <rjw@...ysocki.net>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Hanjun Guo <hanjun.guo@...aro.org>,
"Suravee Suthikulanit" <suravee.suthikulpanit@....com>,
Sudeep Holla <Sudeep.Holla@....com>,
Olof Johansson <olof@...om.net>
Subject: Re: [PATCH v10 16/21] irqchip: Add GICv2 specific ACPI boot support
On 2015/3/12 7:11, Jason Cooper wrote:
> Hey Grant,
>
> On Wed, Mar 11, 2015 at 06:04:50PM +0000, Grant Likely wrote:
>> On 11 Mar 2015 12:42, "Hanjun Guo" <hanjun.guo@...aro.org> wrote:
>>> From: Tomasz Nowicki <tomasz.nowicki@...aro.org>
>>>
>>> ACPI kernel uses MADT table for proper GIC initialization. It needs to
>>> parse GIC related subtables, collect CPU interface and distributor
>>> addresses and call driver initialization function (which is hardware
>>> abstraction agnostic). In a similar way, FDT initialize GICv1/2.
>>>
>>> NOTE: This commit allow to initialize GICv1/2 basic functionality.
>>> While now simple GICv2 init call is used, any further GIC features
>>> require generic infrastructure for proper ACPI irqchip initialization.
>>> That mechanism and stacked irqdomains to support GICv2 MSI/virtualization
>>> extension, GICv3/4 and its ITS are considered as next steps.
>>>
>>> CC: Jason Cooper <jason@...edaemon.net>
>>> CC: Marc Zyngier <marc.zyngier@....com>
>>> CC: Thomas Gleixner <tglx@...utronix.de>
>> BTW, Thomas is taking a bit of a break, do he is unlikely to give an ack
>> here in a timely manner. I've not heard from Jason. Personally, I think we
>> can proceed without their ack if everything else is in order (heck, I used
>> to help with the irq subsystem, use me as an ack of you want). The patch is
>> low impact and only had effect for ARM ACPI builds.
> I'm not talking much, but I am tracking and collecting everything for irqchip.
> We do have some other changes in this driver this time around. So it'd be nice
> if I could take this.
>
> I had reached out to Olof for his thoughts on this and he hasn't had enough
> cycles to look at it. iirc, Marc reviewed a previous version and was happy with
> the changes. My only question I had for Olof I'll put below:
Please allow me to explain a little bit before Olof's confirmation, please don't mind if
any offended.
>
>>> diff --git a/drivers/irqchip/irqchip.c b/drivers/irqchip/irqchip.c
>>> index 0fe2f71..afd1af3 100644
>>> --- a/drivers/irqchip/irqchip.c
>>> +++ b/drivers/irqchip/irqchip.c
>>> @@ -8,6 +8,7 @@
>>> * warranty of any kind, whether express or implied.
>>> */
>>>
>>> +#include <linux/acpi_irq.h>
>>> #include <linux/init.h>
>>> #include <linux/of_irq.h>
>>> #include <linux/irqchip.h>
>>> @@ -26,4 +27,6 @@ extern struct of_device_id __irqchip_of_table[];
>>> void __init irqchip_init(void)
>>> {
>>> of_irq_init(__irqchip_of_table);
>>> +
>>> + acpi_irq_init();
>>> }
> Is this in line with Olof's idea that providing a dtb would override ACPI?
Yes, it will. Since ACPI is default OFF (disabled), if a dtb provided, and no acpi=force
passed in the early command line, dtb will be used as system configuration for
boot (dtb is always the prior one for now) [1]. In acpi_gic_init() which called by
acpi_irq_init(), it will return immediately if acpi disabled, so it will not parse
any ACPI table for device configuration.
[1]: [patch 08/21] ARM64 / ACPI: Introduce early_param "acpi=" to enable/disable ACPI
Thanks
Hanjun
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists