Re: [PATCH v3 17/20] ASoC: dt-bindings: tas2770: add flags for SDOUT pulldown and zero-fill
From: Rob Herring
Date: Wed Mar 05 2025 - 08:26:49 EST
On Wed, Mar 05, 2025 at 01:19:15AM +0000, James Calligeros wrote:
> On Tue, Mar 4, 2025 at 1:50 PM Rob Herring <robh@xxxxxxxxxx> wrote:
> > Can't you align this with the other property you added? Or extend the
> > existing TDM properties we have.
>
> I don't think either option makes sense given the functionality. This chip
> behaves differently to TAS2764, and instead of using a bitmask to determine
> which slots to ignore, we only get a single bit to tell the chip whether we want
> it to fill or pull down *all* inactive slots. The property being a u32 mask
> therefore does not make sense here.
If there's a single bit control, then that just means there's only 1
valid value for a mask in that case.
Or maybe a mask is overkill. What's the usecase for fill or pulldown
*some* inactive slots?
> Building the logic off the existing generic TDM slot properties would alter
> behaviour of existing implementations where zero-fill and pulldown may not be
> required or even wanted. This may continue to be the case going forward so I'd
> rather make it an explicit opt-in rather than some unconditional thing we try to
> turn on heuristically.
Existing implementations would not have the new/extra properties and
would continue to operate as before. Or those drivers could simply
ignore the properties.
> I gave some thought to flipping these bits if a TDM slot mask is passed to the
> driver, however it can still be the case that we don't want both zero-fill *and*
> pulldown active at the same time, or as above some implementations may want
> neither, so we still need to be able to specify them individually.
This just feels like something common because any TDM interface may need
to control this. It's not really a property of the chip, but requirement
of the TDM interface.
Rob