From mboxrd@z Thu Jan 1 00:00:00 1970 From: Agustin Vega-Frias Subject: [PATCH V12 0/3] irqchip: qcom: Add IRQ combiner driver Date: Thu, 2 Feb 2017 18:23:56 -0500 Message-ID: <1486077839-25547-1-git-send-email-agustinv@codeaurora.org> Return-path: Received: from smtp.codeaurora.org ([198.145.29.96]:48118 "EHLO smtp.codeaurora.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751595AbdBBXYN (ORCPT ); Thu, 2 Feb 2017 18:24:13 -0500 Sender: linux-acpi-owner@vger.kernel.org List-Id: linux-acpi@vger.kernel.org To: linux-kernel@vger.kernel.org, linux-acpi@vger.kernel.org, linux-arm-kernel@lists.infradead.org, rjw@rjwysocki.net, lenb@kernel.org, tglx@linutronix.de, jason@lakedaemon.net, marc.zyngier@arm.com Cc: andy.shevchenko@gmail.com, lorenzo.pieralisi@arm.com, timur@codeaurora.org, cov@codeaurora.org, agross@codeaurora.org, harba@codeaurora.org, jcm@redhat.com, msalter@redhat.com, mlangsdo@redhat.com, ahs3@redhat.com, astone@redhat.com, graeme.gregory@linaro.org, guohanjun@huawei.com, charles.garcia-tobin@arm.com, Agustin Vega-Frias Add support for IRQ combiners in the Top-level Control and Status Registers (TCSR) hardware block in Qualcomm Technologies chips. The first patch prevents the ACPI core from attempting to map IRQ resources with a valid ResourceSource as GSIs. The second patch adds support for ResourceSource/IRQ domain mapping and fixes IRQ probe deferral by allowing platform_device IRQ resources to be re-initialized from the corresponding ACPI IRQ resource. Both changes described above are conditional on the ACPI_GENERIC_GSI config. The third patch takes advantage of the new capabilities to implement the driver for the IRQ combiners. Tested on top of v4.10-rc6. Changes V11 -> V12: * Remove probe table, add that optimization later. * Fix some minor style issues. Changes V10 -> V11: * Add probe table and use it to implement driver presence detection. * Fix kernel doc formatting in drivers/acpi/irq.c and some minor style issues. * Minor bug fixes in the driver. Changes V9 -> V10: * Add checks for the producer_consumer field to not use produced IRQ resources as consumed. * Minor bug fixes in the driver. Changes V8 -> V9: * Do not attempt the mapping for non-GSI IRQs during bus scan. * Make some public APIs private to drivers/acpi/irq.c since they are no longer used on other modules. Agustin Vega-Frias (3): ACPI: Generic GSI: Do not attempt to map non-GSI IRQs during bus scan ACPI: Add support for ResourceSource/IRQ domain mapping irqchip: qcom: Add IRQ combiner driver drivers/acpi/Makefile | 2 +- drivers/acpi/{gsi.c => irq.c} | 199 ++++++++++++++++++++++++ drivers/acpi/resource.c | 18 ++- drivers/base/platform.c | 10 ++ drivers/irqchip/Kconfig | 9 ++ drivers/irqchip/Makefile | 1 + drivers/irqchip/qcom-irq-combiner.c | 296 ++++++++++++++++++++++++++++++++++++ include/linux/acpi.h | 10 ++ 8 files changed, 543 insertions(+), 2 deletions(-) rename drivers/acpi/{gsi.c => irq.c} (31%) create mode 100644 drivers/irqchip/qcom-irq-combiner.c -- Qualcomm Datacenter Technologies, Inc. on behalf of the Qualcomm Technologies, Inc. Qualcomm Technologies, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project.