Re: [PATCH v4 09/10] dt-bindings: display: rockchip: dw-dp: Fix sound DAI cells
Krzysztof Kozlowski <[email protected]>
| Newsgroups | org.infradead.lists.linux-rockchip,org.freedesktop.lists.dri-devel,org.infradead.lists.linux-arm-kernel,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <20260722-enchanted-mandrill-of-refinement-adc7b3@quoll> |
On Tue, Jul 21, 2026 at 07:52:39PM +0200, Sebastian Reichel wrote: > The RK3588 and RK3576 DesignWare DisplayPort controllers both have two > possible DAI interfaces: I2S and S/PDIF. Thus an argument is needed to > to select the right interface. > > In addition to that the RK3576 has the same IP as RK3588, but configured > with Multi Stream Transport (MST) enabled for up to 3 displays and thus > has a total of 6 DAI interfaces (I2S and S/PDIF for each possible > stream). Meanwhile the RK3588 does not support MST and thus has only 2 > DAI interfaces. > > The binding update from this patch has only been tested with the simple > single stream transport (SST) setup as the Linux driver does not yet > support MST. > > For MST it is unclear what a good binding should look like. Technically > there are a couple of options: > > 1. Stay with the single cell, but add more numbers. I.e. > 0 = I2S on stream 0, > 1 = S/PDIF on stream 0 > 2 = I2S on stream 1, > 3 = S/PDIF on stream 1 > 4 = I2S on stream 2, > 5 = S/PDIF on stream 2 This looks simpler and anyway the numbers are abstract, so they do not need to match "stream X". > > 2. Add yet another cell, so that there is one argument for the stream ID > and one argument to select between S/PDIF and I2S. I.e. > 0 0 = I2S on stream 0 > 0 1 = S/PDIF on stream 0 > 1 0 = I2S on stream 1 > 1 1 = S/PDIF on stream 1 > 2 0 = I2S on stream 2 > 2 1 = S/PDIF on stream 2 > > 3. Create one subnode for each stream in the DP controller with its > own graph for the video streams. This would mean the MST binding > is quite different from the SST one. > > As it is unclear which way is the most sensible at this point in time, > just go with the most simple option for now and revisit this once MST > is added. > > Signed-off-by: Sebastian Reichel <[email protected]> > --- > .../devicetree/bindings/display/rockchip/rockchip,dw-dp.yaml | 9 +++++---- > 1 file changed, 5 insertions(+), 4 deletions(-) > > diff --git a/Documentation/devicetree/bindings/display/rockchip/rockchip,dw-dp.yaml b/Documentation/devicetree/bindings/display/rockchip/rockchip,dw-dp.yaml > index 2b0d9e23e943..c4f8959dd65d 100644 > --- a/Documentation/devicetree/bindings/display/rockchip/rockchip,dw-dp.yaml > +++ b/Documentation/devicetree/bindings/display/rockchip/rockchip,dw-dp.yaml > @@ -25,7 +25,7 @@ description: | > * Supports up to 8/10 bits per color component > * Supports RBG, YCbCr4:4:4, YCbCr4:2:2, YCbCr4:2:0 > * Pixel clock up to 594MHz > - * I2S, SPDIF audio interface > + * I2S, S/PDIF audio interface > > properties: > compatible: > @@ -46,7 +46,7 @@ properties: > - description: DisplayPort AUX clock > - description: HDCP clock > - description: I2S interface clock > - - description: SPDIF interfce clock > + - description: S/PDIF interfce clock > > clock-names: > minItems: 3 > @@ -83,7 +83,8 @@ properties: > maxItems: 1 > > "#sound-dai-cells": > - const: 0 > + const: 1 > + description: 0 for I2S, 1 for S/PDIF This is ABI change, which might be backwards compatible or not, but commit msg should explain that. I can easily imagine drivers where written that way that they will fail with an old DTB. Best regards, Krzysztof _______________________________________________ Linux-rockchip mailing list [email protected] http://lists.infradead.org/mailman/listinfo/linux-rockchip