Re: [PATCH 1/4] ASoC: es8316: Enable support for S32 LE format and MCLK div by 2

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> > > This introduces a DT property but there's no documentation for it,
but I
> > > don't see why we'd want this in the bindings - the driver should be
able
> > > to tell from the input clock rate and required output/internal clocks
if
> > > it needs to divide MCLK.
>
> > The problem here is that I have no knowledge what is the maximum MCLK
> > that the codec accepts. According to the datasheet the maximum supported
> > frequency of MCLK is 51.2 Mhz. But this doesn't seem to be the case in
> > practice since a MCLK of 48Mhz causes noises in the sound output.
> > The idea to divide the MCLK by 2 was proposed by a Everest Semiconductor
> > engineer.
> > So I don't know how to make this generic enough to be activated from the
> > codec driver.
>
> The usual constraint would be that MCLK can be at most some multiple of
> LRCLK or something similar (are all the other dividers in the chip set
> sensibly for the full scale MCLK?).  In any case you're clearly aware of
> a specific case where it needs to be divided down which can be
> identified even if you're concerned about dividing down for other cases.

In practice no dt property is needed. We support 48M mclk, based on enabling
MCLK divided by 2 for mclk greater than 24M . You may want code like this:
/* enabling  mclk divided by 2 for mclk > 24M */
if (es8316->sysclk > 24000000)
    mclk_div_option = true;




[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Pulse Audio]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux