From: sashiko-bot@kernel.org
To: "Chancel Liu" <chancel.liu@oss.nxp.com>
Cc: devicetree@vger.kernel.org, imx@lists.linux.dev, robh@kernel.org,
conor+dt@kernel.org, Frank.Li@kernel.org
Subject: Re: [PATCH v4 1/4] dt-bindings: connector: Add fsl,aud-io-slot binding
Date: Thu, 05 Nov 2026 06:59:05 +0000 [thread overview]
Message-ID: <sashiko-outbox-198641@kernel.org> (raw)
In-Reply-To: <20261105064117.277495-2-chancel.liu@oss.nxp.com>
Thank you for your contribution! Sashiko AI review found 2 potential issue(s) to consider:
- [Medium] dt-bindings: connector: broken 2-cell interrupt-map-mask in fsl,aud-io-slot
- [Low] dt-bindings: connector: missing constraints and docs in fsl,aud-io-slot
--
commit 1ab07ded804d101088853f33b8efa1603244b3a0
Author: Chancel Liu <chancel.liu@nxp.com>
dt-bindings: connector: Add fsl,aud-io-slot binding
This commit adds the Device Tree binding schema for the NXP AUD-IO slot
connector found on i.MX95 19x19 EVK and i.MX952 EVK boards, defining
nexus mappings for GPIOs, clocks, and interrupts.
> diff --git a/Documentation/devicetree/bindings/connector/fsl,aud-io-slot.yaml b/Documentation/devicetree/bindings/connector/fsl,aud-io-slot.yaml
> new file mode 100644
> index 0000000000000..6e1e3f1b6a330
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/connector/fsl,aud-io-slot.yaml
> @@ -0,0 +1,96 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/connector/fsl,aud-io-slot.yaml#
> +$schema: http://devicetree.org/meta-schemas/base.yaml#
> +
> +title: NXP AUD-IO Slot
[ ... ]
> + '#interrupt-cells':
> + const: 2
> +
> + interrupt-map:
> + minItems: 1
> + maxItems: 2
> +
> + interrupt-map-mask:
> + items:
> + - const: 0xffffffff
> + - const: 0x0
[Severity: Medium]
Does masking out the second interrupt cell with 0x0 in interrupt-map-mask
work as intended when #interrupt-cells is set to 2?
For GPIOs, of_parse_phandle_with_args_map() in drivers/of/base.c supports
gpio-map-pass-thru = <0x0 0xffffffff> to forward the consumer's second
cell (flags) to the parent GPIO controller while masking it during lookup.
However, interrupt-map is parsed via of_irq_parse_one() ->
of_irq_parse_raw() -> of_irq_parse_imap_parent() in drivers/of/irq.c,
which does not support an interrupt-map-pass-thru mechanism and replaces
out_irq->args entirely with the parent interrupt specifier from
interrupt-map. With #interrupt-cells = <2> and interrupt-map-mask =
<0xffffffff 0x0> (as in the example's interrupt-map = <0 0 &gpio2 27
IRQ_TYPE_LEVEL_LOW>), the consumer's second cell is required in the DT
but silently masked out and ignored during interrupt resolution.
Should #interrupt-cells be 1 with a 1-cell interrupt-map-mask for an
index-only interrupt nexus (similar to microchip,mpfs-irqmux.yaml and
renesas,rzn1-gpioirqmux.yaml), or should interrupt-map-mask avoid masking
out the second cell?
> +
> +required:
> + - compatible
> + - '#gpio-cells'
> + - gpio-map
> + - gpio-map-mask
> + - gpio-map-pass-thru
[Severity: Low]
Since the clock nexus properties (#clock-cells and clock-map) and
interrupt nexus properties (#address-cells, #interrupt-cells,
interrupt-map, and interrupt-map-mask) are optional in required:, can
omitting dependentRequired allow incomplete nexus nodes to pass schema
validation?
If a board defines interrupt-map without #address-cells = <0> or
#interrupt-cells, of_irq_parse_raw() in drivers/of/irq.c walks up to the
parent node and inherits the parent's #address-cells, breaking the
interrupt-map lookup. Likewise, #clock-cells and clock-map both need to
be present together for of_parse_phandle_with_args_map() to translate
clocks.
Also, should $schema at the top of fsl,aud-io-slot.yaml reference
http://devicetree.org/meta-schemas/core.yaml# instead of base.yaml#, and
should gpio-map, clock-map, and interrupt-map document which physical
connector signals correspond to each index so add-on board overlays and
base boards agree on the index ABI?
--
Sashiko AI review · https://sashiko.dev/#/patchset/20261105064117.277495-1-chancel.liu@oss.nxp.com?part=1
next prev parent reply other threads:[~2026-11-05 6:59 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-11-05 6:41 [PATCH v4 0/4] arm64: dts: freescale: Add IMX-AUD-IO add-on board support Chancel Liu
2026-11-05 6:41 ` [PATCH v4 1/4] dt-bindings: connector: Add fsl,aud-io-slot binding Chancel Liu
2026-11-05 6:59 ` sashiko-bot [this message]
2026-11-12 22:53 ` Rob Herring
2026-11-05 6:41 ` [PATCH v4 2/4] arm64: dts: freescale: imx95-19x19-evk: Add IMX-AUD-IO board support Chancel Liu
2026-11-05 6:41 ` [PATCH v4 3/4] arm64: dts: freescale: imx952-evk: " Chancel Liu
2026-11-05 6:41 ` [PATCH v4 4/4] arm64: dts: freescale: Add common DTS overlay for IMX-AUD-IO add-on board Chancel Liu
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=sashiko-outbox-198641@kernel.org \
--to=sashiko-bot@kernel.org \
--cc=Frank.Li@kernel.org \
--cc=chancel.liu@oss.nxp.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=imx@lists.linux.dev \
--cc=robh@kernel.org \
--cc=sashiko-reviews@lists.linux.dev \
/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.