[alsa-devel] [PATCH 1/2] ASoC: pcm5102a: Add support for PCM5102A codec
Ricard Wanderlof
ricard.wanderlof at axis.com
Tue May 24 07:44:20 PDT 2016
On Mon, 23 May 2016, Emmanuel Fusté wrote:
> /* pcm5102a in HW mode with external SCK (4wire mode)
> * at 128fs, 192fs or 256fs
> */
> pcm5102a-4w: pcm5102a {
> compatible = "simple-i2s-codec";
> rate = <SNDRV_PCM_RATE_8000_192000>;
> format = < SNDRV_PCM_FMTBIT_S16_LE
> |SNDRV_PCM_FMTBIT_S24_LE
> |SNDRV_PCM_FMTBIT_S32_LE>;
> };
> or
> /* pcm5102a in HW mode with PLL on BCK (3wire mode)
> * 16to384khz but only with bck rate of 64fs
> */
> pcm5102a-4w: pcm5102a {
> compatible = "simple-i2s-codec";
> rate = <SNDRV_PCM_RATE_8000_192000
> ^ SNDRV_PCM_RATE_8000>;
> format = <SNDRV_PCM_FMTBIT_S32_LE>;
> };
> Or
> /* ES9023 in asynchronous mode mclk > 37Mhz
> * I did not try bck rate <64fs as the sabre family did not generally
> * support it.
> */
> es9023: es9023 {
> compatible = "simple-i2s-codec";
> rate = <SNDRV_PCM_RATE_8000_192000>;
> format = <SNDRV_PCM_FMTBIT_S32_LE>;
> };
>
> We could use I2S friendly property instead of "format" :
> bckrates = <48, 64>;
>
>
> With two or tree more property (gpio for mute, de-emphasis and filter
> selection), you could cover 98% of I2S DAC with hardware only interfaces. It
> cover too startup mode of most hifi I2C or SPI controllable DAC. Which is a
> good starting point for chip for which a driver is not already written.
It seems to me that this only covers the cases where the is codec running
in slave mode with MCLK derived from the BCLK, but not cases where the
codec is master and needs to have its MCLK configured appropriately (in
terms of device-specifc clock source and PLL settings), or am I missing
something?
/Ricard
--
Ricard Wolf Wanderlöf ricardw(at)axis.com
Axis Communications AB, Lund, Sweden www.axis.com
Phone +46 46 272 2016 Fax +46 46 13 61 30
More information about the linux-rpi-kernel
mailing list