Re: [PATCHv5 3/5] mfd: motorola-cpcap: Add audio-codec support

From: Sebastian Reichel
Date: Fri Mar 09 2018 - 11:48:43 EST


Hi,

On Fri, Mar 09, 2018 at 07:11:53AM -0800, Tony Lindgren wrote:
> * Mark Brown <broonie@xxxxxxxxxx> [180309 12:41]:
> > On Fri, Mar 09, 2018 at 08:34:14AM +0000, Lee Jones wrote:
> > > On Thu, 08 Mar 2018, Mark Brown wrote:
> >
> > > > Linux. Clocks are a big issue with audio stuff, right now sections of
> > > > the clock tree get handled in the CODEC driver but we're going to want
> > > > to push them out to a clock driver so we're not reimplementing handling
> > > > for clocks.
> >
> > > How is the CODEC controlled? Does it have its own registers? I guess
> > > by "it's not a separate device or IP" you mean that it doesn't. But
> > > that begs the question, how does this then device differ from all the
> > > other devices (adc, battery, charger, regulator, rtc, pwrbutton,
> > > usb-phy and led)?
> >
> > I'm not convinced that this is a particularly good idea for the other
> > functions but anyway... the big thing here is that in these devices the
> > CODEC is generally not the level that the IP is created at, it's a
> > collection of interlinked IPs which usually includes not only audio
> > stuff but also some clocking stuff. The repeatable blocks that could
> > get reused independently are generally a level down from the CODEC
> > level, for example if you look at something like wm8994 there's a couple
> > of identical FLL IPs which could make sense to enumerate individually in
> > the DT. The top level generally doesn't get reused and is purely an
> > encoding of what Linux is currently doing.
>
> It seems that most of the components in the PMICs are just standard
> components packed into the PMIC with a control interface provided
> over I2C or SPI.
>
> So using compatible for things like ADC, RTC and so on makes sense
> if eventually figure out which ones are shared across various
> drivers.
>
> Sounds like audio is a bit more fuzzy like Mark describes above.
> And by not using a compatible for audio we can have things working
> while not establishing and ABI for something that might change
> in the future.

I would agree, if there was no ABI now, but we still have the
ABI. Instead of specifying the compatible property, we now need
to specify what the node name should look like (see my binding
update). That's just a different ABI.

-- Sebastian

Attachment: signature.asc
Description: PGP signature