diff options
author | Nikita Yushchenko <nikita.yoush@cogentembedded.com> | 2016-09-23 14:52:52 +0300 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2016-09-26 09:42:27 -0700 |
commit | ef9656b6936fb7f66e7e25d284c955f4893ac421 (patch) | |
tree | daadc3a815e6b5ca88b7373445ff25e1ab3349a1 /init | |
parent | 8180bd56bdd1dcade8d1b2a0b6f70b2397bec372 (diff) | |
download | linux-stable-ef9656b6936fb7f66e7e25d284c955f4893ac421.tar.gz linux-stable-ef9656b6936fb7f66e7e25d284c955f4893ac421.tar.bz2 linux-stable-ef9656b6936fb7f66e7e25d284c955f4893ac421.zip |
ASoC: tlv320aic31xx: add explicit support for tlv320dac31xx
tlv320dac31xx is a subset of tlv320aic31xx:
- it does not have MIC inputs and ADC, thus capture is not supported,
- it has analog inputs AIN1/AIN2 that can be mixed into output.
Although tlv320dac31xx does work with tlv320aic31xx driver, this setup
does register non-existent widgets and non-existent capture stream.
Thus userspace lists non-existent objects in user interfaces, an can
access these, causing operations with device registers that are
declared as "reserved" in tlv320dac31xx datasheet.
This patch fixes this situation by separating controls/widgets/routes
into common, aic31xx-specific, and dac31xx-specific parts. Only parts
that match actual hardware (as declared in "compatible" device tree
property) are registered.
Changes from v1:
- update device tree binding documentation,
- rebased on top of "ASoC: codec duplicated callback function goes to
component on tlv320aic31xx" commit.
Signed-off-by: Nikita Yushchenko <nikita.yoush@cogentembedded.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'init')
0 files changed, 0 insertions, 0 deletions