Re: [PATCH v3 10/12] dt-bindings: mediatek: mt8188: add audio afe document

From: Trevor Wu (吳文良)
Date: Tue Dec 13 2022 - 10:06:23 EST


On Mon, 2022-12-12 at 09:40 +0100, Krzysztof Kozlowski wrote:
> On 12/12/2022 03:43, Trevor Wu (吳文良) wrote:
> > > >
> > > > > > + uniqueItems: true
> > > > > > + items:
> > > > > > + minimum: 0
> > > > > > + maximum: 15
> > > > > > +
> > > > > > + "^mediatek,etdm-in[1-2]-mclk-always-on-rate-hz$":
> > > > > > + description: Specify etdm in mclk output rate for
> > > > > > always
> > > > > > on
> > > > > > case.
> > > > >
> > > > > How is it different than assigned-clock-rates?
> > > > >
> > > >
> > > > This includes clock enabling at init stage.
> > >
> > > assigned-clock-rates are also at init stage. I asked what is
> > > different.
> > >
> >
> > If the property is used, there are three parts included in dai
> > driver
> > probe function.
> >
> > 1. set clock parent (which APLL)
> > 2. set clock rate (MCLK rate)
> > 3. enable clock (MCLK On)
> >
> > The first two parts can be done by existing dts clock properties,
> > but
> > the last one can't.
> > When MCLK should be enabled at boot time and kept on, this property
> > is used. That's why I say the property is designed for always-on
> > case.
>
> Heh, so the "always on case" means this property enables clock? How
> is
> this even DT property? That's not how clocks should be kept enabled.
> You
> need proper clock provider and consumer.
>
>

Hi Krzysztof,

Sorry, I don't know it is not appropriate to notify driver that the
clock should be ketp enabled after boot.

The original idea is that enabling this clock in the machine driver,
but a property to inform machine driver is also required when the
machine driver is shared by different codec combination. And it's
easier to handle set_rate and set_parent in etdm dai driver, so I put
the property here.

Do you mean if the clock consumer(audio codec or external DSP) requries
the clock, the consumer should enable the clock by itself?

Thanks,
Trevor