From: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
To: Agustin Vega-Frias <agustinv@codeaurora.org>
Cc: 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, andy.shevchenko@gmail.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
Subject: Re: [PATCH V12 1/3] ACPI: Generic GSI: Do not attempt to map non-GSI IRQs during bus scan
Date: Fri, 3 Feb 2017 09:01:13 +0000 [thread overview]
Message-ID: <20170203090113.GB30745@red-moon> (raw)
In-Reply-To: <1486077839-25547-2-git-send-email-agustinv@codeaurora.org>
On Thu, Feb 02, 2017 at 06:23:57PM -0500, Agustin Vega-Frias wrote:
> ACPI extended IRQ resources may contain a Resource Source field to specify
> an alternate interrupt controller, attempting to map them as GSIs is
> incorrect, so just disable the platform resource.
>
> Since this field is currently ignored, we make this change conditional
> on CONFIG_ACPI_GENERIC_GSI to keep the current behavior on x86 platforms,
> in case some existing ACPI tables are using this incorrectly.
>
> Acked-by: Rafael J. Wysocki <rafael@kernel.org>
> Signed-off-by: Agustin Vega-Frias <agustinv@codeaurora.org>
> ---
> drivers/acpi/resource.c | 18 +++++++++++++++++-
> 1 file changed, 17 insertions(+), 1 deletion(-)
Acked-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
> diff --git a/drivers/acpi/resource.c b/drivers/acpi/resource.c
> index cb57962..8b11d6d 100644
> --- a/drivers/acpi/resource.c
> +++ b/drivers/acpi/resource.c
> @@ -43,6 +43,19 @@ static inline bool acpi_iospace_resource_valid(struct resource *res)
> acpi_iospace_resource_valid(struct resource *res) { return true; }
> #endif
>
> +#if IS_ENABLED(CONFIG_ACPI_GENERIC_GSI)
> +static inline bool is_gsi(struct acpi_resource_extended_irq *ext_irq)
> +{
> + return ext_irq->resource_source.string_length == 0 &&
> + ext_irq->producer_consumer == ACPI_CONSUMER;
> +}
> +#else
> +static inline bool is_gsi(struct acpi_resource_extended_irq *ext_irq)
> +{
> + return true;
> +}
> +#endif
> +
> static bool acpi_dev_resource_len_valid(u64 start, u64 end, u64 len, bool io)
> {
> u64 reslen = end - start + 1;
> @@ -470,9 +483,12 @@ bool acpi_dev_resource_interrupt(struct acpi_resource *ares, int index,
> acpi_dev_irqresource_disabled(res, 0);
> return false;
> }
> - acpi_dev_get_irqresource(res, ext_irq->interrupts[index],
> + if (is_gsi(ext_irq))
> + acpi_dev_get_irqresource(res, ext_irq->interrupts[index],
> ext_irq->triggering, ext_irq->polarity,
> ext_irq->sharable, false);
> + else
> + acpi_dev_irqresource_disabled(res, 0);
> break;
> default:
> res->flags = 0;
> --
> 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.
>
next prev parent reply other threads:[~2017-02-03 8:59 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-02-02 23:23 [PATCH V12 0/3] irqchip: qcom: Add IRQ combiner driver Agustin Vega-Frias
2017-02-02 23:23 ` [PATCH V12 1/3] ACPI: Generic GSI: Do not attempt to map non-GSI IRQs during bus scan Agustin Vega-Frias
2017-02-03 9:01 ` Lorenzo Pieralisi [this message]
2017-02-02 23:23 ` [PATCH V12 2/3] ACPI: Add support for ResourceSource/IRQ domain mapping Agustin Vega-Frias
2017-02-03 9:02 ` Lorenzo Pieralisi
2017-02-02 23:23 ` [PATCH V12 3/3] irqchip: qcom: Add IRQ combiner driver Agustin Vega-Frias
2017-02-03 10:31 ` [PATCH V12 0/3] " Hanjun Guo
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20170203090113.GB30745@red-moon \
--to=lorenzo.pieralisi@arm.com \
--cc=agross@codeaurora.org \
--cc=agustinv@codeaurora.org \
--cc=ahs3@redhat.com \
--cc=andy.shevchenko@gmail.com \
--cc=astone@redhat.com \
--cc=charles.garcia-tobin@arm.com \
--cc=cov@codeaurora.org \
--cc=graeme.gregory@linaro.org \
--cc=guohanjun@huawei.com \
--cc=harba@codeaurora.org \
--cc=jason@lakedaemon.net \
--cc=jcm@redhat.com \
--cc=lenb@kernel.org \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=marc.zyngier@arm.com \
--cc=mlangsdo@redhat.com \
--cc=msalter@redhat.com \
--cc=rjw@rjwysocki.net \
--cc=tglx@linutronix.de \
--cc=timur@codeaurora.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).