From: Andy Shevchenko <andriy.shevchenko@intel.com>
To: Fabio Estevam <festevam@gmail.com>
Cc: lee@kernel.org, maz@kernel.org, andy@kernel.org,
jic23@kernel.org, dmitry.torokhov@gmail.com,
linux-input@vger.kernel.org, mfd@lists.linux.dev,
linux-iio@vger.kernel.org, robh@kernel.org, krzk+dt@kernel.org,
conor+dt@kernel.org, devicetree@vger.kernel.org,
imx@lists.linux.dev, stable@vger.kernel.org
Subject: Re: [PATCH v2 2/2] mfd: mxs-lradc: Pass parent IRQs to child drivers
Date: Tue, 10 Nov 2026 23:02:36 +0200 [thread overview]
Message-ID: <avOGbAYDCQyuzd6Q@ashevche-desk.local> (raw)
In-Reply-To: <20261110141934.42490-2-festevam@gmail.com>
On Tue, Nov 10, 2026 at 11:19:34AM -0300, Fabio Estevam wrote:
> The MFD driver stores raw DT interrupt indices in IRQ resources but
> registers its child devices without an IRQ domain or IRQ base. The child
> drivers consequently receive the indices as if they were mapped Linux
> IRQ numbers. IRQ index 0 triggers the platform_get_irq_byname() warning:
>
> 0 is an invalid IRQ number
>
> The children then try to recover the indices from their resources and
> map them against the parent OF node. Besides duplicating IRQ names in
> the parent and children, this relies on invalid platform IRQ resources
> and fails when IRQ 0 is rejected.
>
> Resolve the interrupts with platform_get_irq() in the MFD parent and
> store the mapped IRQs in the shared LRADC data. Drop the child IRQ
> resources and duplicated name arrays, and have both child drivers
> request the mapped IRQs directly. Use the MFD memory base support to
> translate a single relative memory resource shared by both cells.
>
> Tested on an i.MX28 EVK. The mxs-lradc-ts driver probes successfully,
> touch events are reported, and the touch-detect and LRADC channel 7
> interrupt counters increase as expected.
>
> Cc: stable@vger.kernel.org
> Suggested-by: Lee Jones <lee@kernel.org>
> Closes: https://lore.kernel.org/linux-input/CAOMZO5CgTzo6GuXptD4mFTN=UsJJqpkixDW1Q64gqZGrij8+uQ@mail.gmail.com/
He-he, this rings a bell! I have still a copy of the mbox of this thread
locally to maybe (likely never) look into that. So, I am so glad to see this
being eventually addressed!
> Fixes: a85a6c86c25b ("driver core: platform: Clarify that IRQ 0 is invalid")
> Signed-off-by: Fabio Estevam <festevam@gmail.com>
...
> struct device_node *node = dev->parent->of_node;
> struct mxs_lradc *lradc = dev_get_drvdata(dev->parent);
> struct mxs_lradc_ts *ts;
> - int ret, irq, virq, i;
> + int ret, i;
> u32 ts_wires = 0, adapt;
Can we, while at it, kinda follow the reversed xmas tree order here?
...
> - lradc->soc = (kernel_ulong_t)device_get_match_data(&pdev->dev);
> + data = device_get_match_data(dev);
Is this driver affected by driver_override case? If so, this has to be checked
against NULL and return -ENODATA.
> + lradc->soc = data->soc;
--
With Best Regards,
Andy Shevchenko
next prev parent reply other threads:[~2026-11-10 21:02 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-11-10 14:19 [PATCH v2 1/2] dt-bindings: mfd: mxs-lradc: Fix interrupt order Fabio Estevam
2026-11-10 14:19 ` [PATCH v2 2/2] mfd: mxs-lradc: Pass parent IRQs to child drivers Fabio Estevam
2026-11-10 14:38 ` sashiko-bot
2026-11-10 21:02 ` Andy Shevchenko [this message]
2026-11-11 12:07 ` [PATCH v2 1/2] dt-bindings: mfd: mxs-lradc: Fix interrupt order Krzysztof Kozlowski
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=avOGbAYDCQyuzd6Q@ashevche-desk.local \
--to=andriy.shevchenko@intel.com \
--cc=andy@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dmitry.torokhov@gmail.com \
--cc=festevam@gmail.com \
--cc=imx@lists.linux.dev \
--cc=jic23@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=lee@kernel.org \
--cc=linux-iio@vger.kernel.org \
--cc=linux-input@vger.kernel.org \
--cc=maz@kernel.org \
--cc=mfd@lists.linux.dev \
--cc=robh@kernel.org \
--cc=stable@vger.kernel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.