From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751356AbbCLFU6 (ORCPT ); Thu, 12 Mar 2015 01:20:58 -0400 Received: from si-002-i69.relay.mailchannels.net ([184.154.112.243]:6524 "EHLO relay.mailchannels.net" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1750909AbbCLFU4 (ORCPT ); Thu, 12 Mar 2015 01:20:56 -0400 X-Greylist: delayed 88701 seconds by postgrey-1.27 at vger.kernel.org; Thu, 12 Mar 2015 01:20:55 EDT X-Sender-Id: duocircle|x-authuser|jac299792458 X-Sender-Id: duocircle|x-authuser|jac299792458 X-MC-Relay: Neutral X-MailChannels-SenderId: duocircle|x-authuser|jac299792458 X-MailChannels-Auth-Id: duocircle X-MC-Loop-Signature: 1426137171425:3392057072 X-MC-Ingress-Time: 1426137171425 X-Mail-Handler: DuoCircle Outbound SMTP X-Originating-IP: 72.84.113.125 X-Report-Abuse-To: abuse@duocircle.com (see https://support.duocircle.com/support/solutions/articles/5000540958-duocircle-standard-smtp-abuse-information for abuse reporting information) X-MHO-User: U2FsdGVkX1+zbcphXbsZqzGE8ddN5VdQ+bfJCVu8g5M= X-DKIM: OpenDKIM Filter v2.6.8 io 78B0A8013D Date: Thu, 12 Mar 2015 05:12:45 +0000 From: Jason Cooper To: Hanjun Guo Cc: Grant Likely , Mark Rutland , linaro-acpi , Catalin Marinas , Will Deacon , Lorenzo Pieralisi , Timur Tabi , ACPI Devel Mailing List , Robert Richter , Arnd Bergmann , Marc Zyngier , Jon Masters , Tomasz Nowicki , Mark Brown , Thomas Gleixner , linux-arm-kernel@lists.infradead.org, Graeme Gregory , Ashwin Chaugule , "Rafael J. Wysocki" , Linux Kernel Mailing List , Hanjun Guo , Suravee Suthikulanit , Sudeep Holla , Olof Johansson Subject: Re: [PATCH v10 16/21] irqchip: Add GICv2 specific ACPI boot support Message-ID: <20150312051245.GI21998@io.lakedaemon.net> References: <1426077587-1561-1-git-send-email-hanjun.guo@linaro.org> <1426077587-1561-17-git-send-email-hanjun.guo@linaro.org> <20150311231141.GG21998@io.lakedaemon.net> <5500EFFF.2070807@huawei.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <5500EFFF.2070807@huawei.com> User-Agent: Mutt/1.5.21 (2010-09-15) X-AuthUser: jac299792458 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Mar 12, 2015 at 09:46:39AM +0800, Hanjun Guo wrote: > 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" wrote: > >>> From: Tomasz Nowicki > >>> > >>> 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 > >>> CC: Marc Zyngier > >>> CC: Thomas Gleixner > >> 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. I'm not sure I parse this correctly, but fwiw, I'm not easily 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 > >>> #include > >>> #include > >>> #include > >>> @@ -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. Ok, that matches my recollection. Thanks for refreshing my memory. I'll apply this on a topic branch for irqchip/gic when I return from travel. Most likely Friday or over the weekend. thx, Jason.