Discussion:
ASoC machine driver: how to configure supported frame rates?
Sergej Sawazki
2014-10-10 16:12:09 UTC
Permalink
Dear all,

I'm writing an ALSA SoC machine driver. The codec on my board, as well
as the cpu do support the following rates: SNDRV_PCM_RATE_8000_192000

However, the codec, as well as the cpu are clock slaves and the clocks
are fixed. Hence, my board does only support the 96kHz sample rate.

Can someone give me some advice on how to tell ALSA that my board does
only support the rate SNDRV_PCM_RATE_96000?
I don't want to modify the codec and the platform driver.

Any help would be highly appreciated. Thanks!

- Sergej
Lars-Peter Clausen
2014-10-10 18:29:01 UTC
Permalink
Post by Sergej Sawazki
Dear all,
I'm writing an ALSA SoC machine driver. The codec on my board, as well
as the cpu do support the following rates: SNDRV_PCM_RATE_8000_192000
However, the codec, as well as the cpu are clock slaves and the clocks
are fixed. Hence, my board does only support the 96kHz sample rate.
Can someone give me some advice on how to tell ALSA that my board does
only support the rate SNDRV_PCM_RATE_96000?
I don't want to modify the codec and the platform driver.
Any help would be highly appreciated. Thanks!
You can apply additional constraints in the startup callback of the
snd_soc_ops of DAI link in your board driver.

For example see sound/soc/samsung/h1940_uda1380.c

- Lars
Sergej Sawazki
2014-10-10 20:42:53 UTC
Permalink
Post by Lars-Peter Clausen
Post by Sergej Sawazki
Dear all,
I'm writing an ALSA SoC machine driver. The codec on my board, as well
as the cpu do support the following rates: SNDRV_PCM_RATE_8000_192000
However, the codec, as well as the cpu are clock slaves and the clocks
are fixed. Hence, my board does only support the 96kHz sample rate.
Can someone give me some advice on how to tell ALSA that my board does
only support the rate SNDRV_PCM_RATE_96000?
I don't want to modify the codec and the platform driver.
Any help would be highly appreciated. Thanks!
You can apply additional constraints in the startup callback of the
snd_soc_ops of DAI link in your board driver.
For example see sound/soc/samsung/h1940_uda1380.c
- Lars
Lars, thanks for you help. It is working.

- Sergej

Loading...