]> git.baikalelectronics.ru Git - kernel.git/commit
ASoC: audio_graph_card2: Support variable slot widths
authorMark Brown <broonie@kernel.org>
Mon, 7 Mar 2022 20:36:55 +0000 (20:36 +0000)
committerMark Brown <broonie@kernel.org>
Mon, 7 Mar 2022 20:36:55 +0000 (20:36 +0000)
commit750bc67f7d72a429560cfff4c5151506d9977e4b
treea82f2135c93fe257db9873dd4e6fadf7edb56f2e
parent85b4d82189bae41af5e1570a4f8258c48f57d436
parentf99d764233f76e0d278a2c0e9fe394a7e73fe05f
ASoC: audio_graph_card2: Support variable slot widths

Merge series from Richard Fitzgerald <rf@opensource.cirrus.com>:

This adds support for I2S/TDM links where the slot width varies
depending on the sample width, in a way that cannot be guessed by
component hw_params().

A typical example is:

- 16-bit samples use 16-bit slots
- 24-bit samples use 32-bit slots

There is no way for a component hw_params() to deduce from the information
it is passed that 24-bit samples will be in 32-bit slots.

Some audio hardware cannot support a fixed slot width or a slot width
equal to the sample width in all cases. This is usually due either to
limitations of the audio serial port or system clocking restrictions.