Thread (21 messages) flat view 21 messages, 4 authors, 2d ago

Re: [PATCH v3 1/5] ASoC: dt-bindings: fsl,imx-asrc: update port binding to support multiple paths

From: Krzysztof Kozlowski <krzk@kernel.org>
Date: 2026-08-11 05:44:59
Also in: imx, linux-arm-kernel, linux-devicetree, linux-sound, lkml

On 11/08/2026 04:28, Shengjiu Wang wrote:
On Mon, Aug 10, 2026 at 3:14 PM Krzysztof Kozlowski [off-list ref] wrote:
quoted
On Tue, Aug 04, 2026 at 06:02:14PM +0800, shengjiu.wang@oss.nxp.com wrote:
quoted
From: Shengjiu Wang <redacted>

The i.MX ASRC hardware supports up to three conversion pairs (A, B, C).
Which SoC? Did you read this binding you are changing?
The i.MX35 ASRC (the original) already supports three conversion pairs
(A, B, C).
All subsequent SoCs that reuse this IP -- including i.MX53, i.MX8QM, i.MX8QXP,
i.MX952, share the same three-pair hardware. This binding covers all of them.
quoted
quoted
The existing binding exposed only a single generic audio-graph port,
which cannot represent independent conversion paths when multiple pairs
are in use simultaneously.

Add a ports container that enumerates up to three sub-ports, each
representing an independent conversion path:
  port@0 -- conversion path 0
  port@1 -- conversion path 1
  port@2 -- conversion path 2

Each sub-port references audio-graph-port.yaml as before. Hardware pairs
are allocated dynamically at stream open time; each active stream
direction (playback or capture) on a port consumes one hardware pair.

For backwards compatibility, keep the old single port property but mark
Why? Did the old hardware change that it has more ports/paths?
The hardware has always supported three pairs; the original binding simply
did not expose them all. This patch corrects the binding to match what the
hardware has always been capable of.
quoted
quoted
it deprecated. A schema constraint (not: required: [port, ports]) ensures
that both forms cannot be used at the same time. The binding example is
updated to show the preferred ports 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.
Does it break other users of this binding?
No. The existing single 'port' property is kept and marked deprecated
so that any out-of-tree device tree still works without modification.
The new 'ports' form is additive only.
quoted
Why mentioning upstream in the first place? Either this change breaks
ABI or not, explain that.
The deprecated 'port' property is retained, so this change is fully backwards
compatible and does not break ABI.
So why? Drop redundant parts.

Best regards,
Krzysztof
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help