Re: [PATCH v2 3/4] ASoC: dt-bindings: fsl-sai: allow only one dma-names

From: Frank Li
Date: Fri Mar 01 2024 - 12:26:04 EST


On Fri, Mar 01, 2024 at 05:07:07PM +0000, Conor Dooley wrote:
> On Fri, Mar 01, 2024 at 11:46:20AM -0500, Frank Li wrote:
> > On Fri, Mar 01, 2024 at 04:05:25PM +0000, Conor Dooley wrote:
> > > On Thu, Feb 29, 2024 at 02:38:24PM -0500, Frank Li wrote:
> > > > On Thu, Feb 29, 2024 at 06:57:29PM +0000, Conor Dooley wrote:
> > > > > On Thu, Feb 29, 2024 at 06:55:58PM +0000, Conor Dooley wrote:
> > > > > > On Tue, Feb 27, 2024 at 03:54:11PM -0500, Frank Li wrote:
> > > > > > > Some sai only connect one direction. So allow only "rx" or "tx" for
> > > > > > > dma-names.
> > > > > >
> > > > > > Which sai? Can you restrict this per compatible please, so that someone
> > > > > > cannot add 2 dmas for ones where only the tx is supported.
> > > > > >
> > > > > > | dmas:
> > > > > > | minItems: 1
> > > > > > | items:
> > > > > > | - description: DMA controller phandle and request line for RX
> > > > > > | - description: DMA controller phandle and request line for TX
> > > > > >
> > > > > > The binding already allows only one, but it documents that the first dma
> > > > > > is always the RX dma, and that doesn't change with this patch..
> > > > >
> > > > > I said "doesn't change" - but I don't think you can change this
> > > > > trivially, as something could rely on the first dma being the rx one.
> > > > > You'd have to check that there is nothing using these using indices
> > > > > rather than names before making any changes here.
> > > >
> > > > Linux driver and dts with tx only work well. Only issue is dtb_check will
> > > > report error. I want to eliminate these DTB_CHECK warning.
> > >
> > > Linux is not the only user of these bindings, citing linux as your
> > > evidence here is only sufficient if no other users exist. Do they?
> >
> > But, 'dmas' should be common property for all these bindings? I don't think
> > they use 'descriptions:' property, which should guide dts writer to write
> > dts file. actually words 'DMA controller phandle and request line' just
> > nonsense words. let 'regs', it'd better descript at 'reg-names' instead
> > of 'regs' if reg-names exist. Only meansful words is "RX" and "TX", which
> > already show at "dma-names".
>
> None of this matters. If there's a documented order for these, which
> there is, software is not obligated to use the names and can rely on the
> order alone. You need to check that there are no other users which will
> be broken by your proposed change.

As my best knowledge, only linux use this binding.

Frank

>
> > > > And it also reasonable, only rx or tx for a special SAI.
> > > >
> > > > Can we remove 'description'? dmas should already descripted at common place
> > > > and 'RX' and 'TX' are listed at 'dma-names'
> > >
> > > Removing the description has the same problem. The existing binding has
> > > set a fixed order that you now want to make flexible.
> >
> > Actually original set minItems: is 1, which means allow 1 channel. but
> > set items to force two channel.
> >
> > Does it work
> >
> > oneOf:
> > items:
> > - description: TX
> > - description: RX
> > items:
> > - description: TX
> > items:
> > - description: RX
> >
> > >
> > > Thanks,
> > > Conor.
> >
> >