Re: [PATCH v3 1/6] ASoC: dt-bindings: sophgo,cv1800b: add I2S/TDM controller
Krzysztof Kozlowski <[email protected]>
| Newsgroups | dev.linux.lists.sophgo,org.infradead.lists.linux-riscv,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel,org.kernel.vger.linux-sound |
|---|---|
| Message-ID | <20260120-chirpy-booby-of-potency-ece1d7@quoll> |
On Mon, Jan 19, 2026 at 08:30:42PM +0400, Anton D. Stavinskii wrote: > There are 4 TDM controllers on the SoC. Each controller can receive or > transmit data over DMA. The dma it self has 8 channels. > Each channel can be connected only to a specific i2s node. But each > of dma channel can have multiple purposes so in order to save dma > channels the configurations allows to use tx and rx, only rx, only tx > or none channels. I2S controller without channels can be useful in > configuration where I2S is used as clock source only and doesn't > produce any data. > > Signed-off-by: Anton D. Stavinskii <[email protected]> > --- > .../bindings/sound/sophgo,cv1800b-i2s.yaml | 67 ++++++++++++++++++++++ > 1 file changed, 67 insertions(+) > > diff --git a/Documentation/devicetree/bindings/sound/sophgo,cv1800b-i2s.yaml b/Documentation/devicetree/bindings/sound/sophgo,cv1800b-i2s.yaml > new file mode 100644 > index 000000000000..e09631308bb6 > --- /dev/null > +++ b/Documentation/devicetree/bindings/sound/sophgo,cv1800b-i2s.yaml > @@ -0,0 +1,67 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/sound/sophgo,cv1800b-i2s.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Sophgo CV1800B I2S/TDM controller > + > +maintainers: > + - Anton D. Stavinskii <[email protected]> > + > +description: I2S/TDM controller found in CV1800B / Sophgo SG2002/SG2000 SoCs. > + > +allOf: > + - $ref: dai-common.yaml# > + > +properties: > + compatible: > + const: sophgo,cv1800b-i2s > + > + reg: > + maxItems: 1 > + > + "#sound-dai-cells": > + const: 0 > + > + clocks: > + minItems: 2 Drop minItems, redundant in such case, implied by maxItems. > + maxItems: 2 > + > + clock-names: > + items: > + - const: i2s > + - const: mclk > + > + dmas: missing minItems, I already pointed out that your constraints always need to be synchronized between xxx and xxx-names. > + maxItems: 2 > + > + dma-names: > + minItems: 1 > + items: > + - enum: [rx, tx] > + - const: tx Best regards, Krzysztof