[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <561B5CBE.50701@linaro.org>
Date: Mon, 12 Oct 2015 15:09:50 +0800
From: Hanjun Guo <hanjun.guo@...aro.org>
To: Thomas Gleixner <tglx@...utronix.de>,
Marc Zyngier <marc.zyngier@....com>
CC: Jiang Liu <jiang.liu@...ux.intel.com>,
Jason Cooper <jason@...edaemon.net>,
"Rafael J. Wysocki" <rjw@...ysocki.net>,
linux-acpi@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-kernel@...r.kernel.org,
Lorenzo Pieralisi <lorenzo.pieralisi@....com>,
Tomasz Nowicki <tomasz.nowicki@...aro.org>,
Suravee Suthikulpanit <Suravee.Suthikulpanit@....com>,
Graeme Gregory <graeme@...a.org.uk>,
Jake Oshins <jakeo@...rosoft.com>
Subject: Re: [PATCH 00/16] Divorcing irqdomain and device_node
On 10/12/2015 10:40 AM, Hanjun Guo wrote:
> On 10/12/2015 05:01 AM, Thomas Gleixner wrote:
>> On Tue, 6 Oct 2015, Marc Zyngier wrote:
>>> [This patch series used to be called "Making the generic ACPI GSI
>>> layer irqdomain aware", but as I've radically changed my approach to
>>> this problem, I've decided to reset the counters...]
>>>
>>> The irqdomain code is not entierely ACPI friendly, as it has some
>>> built-in knowledge of the device-tree. Nothing too harmful, but enough
>>> to scare the ARM ACPI developpers which end up with their own version
>>> of the square wheel. And some of the ramifications actually run deeper
>>> than initially expected.
>>>
>>> This series adapts the irqdomain code to use 'struct fwnode_handle'
>>> instead of 'struct device_node' as the identifier for a domain
>>> (compatibility interfaces are of course added). It also introduces a
>>> generic IRQ specifier that firmware interfaces (DT or ACPI) can
>>> directly use to configure interrupts, and allow the ACPI GSI code to
>>> be plugged into this.
>>>
>>> As examples, we convert the ARM GIC ACPI support to use irqdomains as
>>> originally intended, and rework the MSI code to also move away from
>>> using device nodes when using irqdomains.
>>>
>>> Overall, this gives us a way to use irqdomains on both DT and ACPI
>>> enabled platforms, having very little changes made to the actual
>>> drivers (other than the probing infrastructure). Because we keep the
>>> flow of information between the various layers identical between ACPI
>>> and DT, we immediately benefit from the existing infrastructure.
>>>
>>> This has been test-booted on Juno, is based on 4.3-rc4, and available
>>> at:
>>>
>>> git://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms.git
>>> irq/irq-domain-fwnode-v1
I pulled, and I found that there is v2 :)
>>>
>>> Marc Zyngier (16):
>>> irqdomain: Use an accessor for the of_node field
>>> irqdomain: Convert irqdomain->of_node to fwnode
>>> irqdomain: Allow irq domain lookup by fwnode
>>> irqdomain: Introduce a firmware-specific IRQ specifier structure
>>> irqchip: Convert all alloc/xlate users from of_node to fwnode
>>> irqdomain: Introduce irq_create_fwspec_mapping
>>> irqdomain: Introduce irq_domain_create_{linear,tree}
>>> irqdomain: Add a fwnode_handle allocator
>>> acpi/gsi: Always perform an irq domain lookup
>>> acpi/gsi: Add acpi_set_irq_model to initialize the GSI layer
>>> irqchip/gic: Get rid of gic_init_bases()
>>> irqchip/gic: Switch ACPI support to stacked domains
>>> irqchip/gic: Kill the xlate method
>>> acpi/gsi: Cleanup acpi_register_gsi
>>> irqdomain: Introduce irq_domain_create_hierarchy
>>> irqdomain/msi: Use fwnode instead of of_node
>>
>> I really like this one way better than the previous attempts and I
>> couldn't find any real issue when going through them with a fine comb.
>
> Fully agree, this version removes the dependency on DT for ACPI.
>
>>
>> I'd like to get that into 4.4, so I have to ask for the opinion of
>> ACPI folks. Having an ack on those patches would be nice.
>
> I'm reviewing this patch set, and will have a test today.
I'm pretty fine with this patch set (except some comments for patch 1),
I will wait for your v2 to be sent out, then add reviews and acks.
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