Re: [PATCH 1/4] dt-bindings: sound: fsl,imx-asrc: update port binding to support multiple pairs
Rob Herring <[email protected]> Fri, 31 Jul 2026 17:59:30 -0500
| Newsgroups | dev.linux.lists.imx,org.infradead.lists.linux-arm-kernel,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel,org.kernel.vger.linux-sound,org.ozlabs.lists.linuxppc-dev |
|---|---|
| Message-ID | <[email protected]> |
On Mon, Jul 20, 2026 at 05:54:47PM +0800, [email protected] wrote: > From: Shengjiu Wang <[email protected]> > > The i.MX ASRC hardware supports up to three conversion pairs (A, B, C). > The existing binding exposed only a single generic audio-graph port, > which cannot represent the individual pair endpoints. > > Add a ports container that enumerates three named sub-ports: > port@0 -- pair A > port@1 -- pair B > port@2 -- pair C > > Each sub-port references audio-graph-port.yaml as before. > > For backwards compatibility, keep the old single port property but mark > it deprecated. A schema constraint (not: required: [port, ports]) ensures > that both forms cannot be used at the same time. Update the examples to > show both the new ports form and the deprecated port form. > > No existing upstream DTS file for fsl,imx-asrc uses the previously > documented single 'port' node, so this change does not break any > in-tree device tree. > > Signed-off-by: Shengjiu Wang <[email protected]> > --- > .../bindings/sound/fsl,imx-asrc.yaml | 78 +++++++++++++++++++ > 1 file changed, 78 insertions(+) > > diff --git a/Documentation/devicetree/bindings/sound/fsl,imx-asrc.yaml b/Documentation/devicetree/bindings/sound/fsl,imx-asrc.yaml > index 608defc93c1e..18d252722aa8 100644 > --- a/Documentation/devicetree/bindings/sound/fsl,imx-asrc.yaml > +++ b/Documentation/devicetree/bindings/sound/fsl,imx-asrc.yaml > @@ -78,9 +78,29 @@ properties: > power-domains: > maxItems: 1 > > + ports: > + $ref: /schemas/graph.yaml#/properties/ports > + properties: > + port@0: > + $ref: audio-graph-port.yaml# > + unevaluatedProperties: false > + description: port for pair A > + > + port@1: > + $ref: audio-graph-port.yaml# > + unevaluatedProperties: false > + description: port for pair B > + > + port@2: > + $ref: audio-graph-port.yaml# > + unevaluatedProperties: false > + description: port for pair C > + > port: > $ref: audio-graph-port.yaml# > unevaluatedProperties: false > + deprecated: true > + description: deprecated, use ports instead > > fsl,asrc-rate: > $ref: /schemas/types.yaml#/definitions/uint32 > @@ -125,6 +145,10 @@ required: > - fsl,asrc-width > > allOf: > + - not: > + required: > + - port > + - ports > - $ref: dai-common.yaml# > - if: > properties: > @@ -188,3 +212,57 @@ examples: > }; > }; > }; > + > + - | > + #include <dt-bindings/interrupt-controller/irq.h> > + #include <dt-bindings/clock/imx6qdl-clock.h> > + asrc1: asrc@2034000 { Drop unused label. Presumably the existing example uses the deprecated 'port'. If so, just modify it to use ports and drop the deprecated part. Rob