diff options
author | Mark Brown <broonie@linaro.org> | 2013-08-11 12:29:07 +0100 |
---|---|---|
committer | Mark Brown <broonie@linaro.org> | 2013-08-18 18:27:40 +0100 |
commit | 782fbaba36731d46820f3a4f358a7b46a9cd795c (patch) | |
tree | eb359f1b582e9e5f705fa35a364c03d1685bad3a | |
parent | d4e4ab86bcba5a72779c43dc1459f71fea3d89c8 (diff) | |
download | op-kernel-dev-782fbaba36731d46820f3a4f358a7b46a9cd795c.zip op-kernel-dev-782fbaba36731d46820f3a4f358a7b46a9cd795c.tar.gz |
ASoC: cs4270: Add DAPM support
This makes it possible to hook the device into a more complex board and
ensures it will continue to work with non-DAPM support removed from the
core.
Signed-off-by: Mark Brown <broonie@linaro.org>
-rw-r--r-- | sound/soc/codecs/cs4270.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/sound/soc/codecs/cs4270.c b/sound/soc/codecs/cs4270.c index 8e47798..83c835d 100644 --- a/sound/soc/codecs/cs4270.c +++ b/sound/soc/codecs/cs4270.c @@ -139,6 +139,22 @@ struct cs4270_private { struct regulator_bulk_data supplies[ARRAY_SIZE(supply_names)]; }; +static const struct snd_soc_dapm_widget cs4270_dapm_widgets[] = { +SND_SOC_DAPM_INPUT("AINL"), +SND_SOC_DAPM_INPUT("AINR"), + +SND_SOC_DAPM_OUTPUT("AOUTL"), +SND_SOC_DAPM_OUTPUT("AOUTR"), +}; + +static const struct snd_soc_dapm_route cs4270_dapm_routes[] = { + { "Capture", NULL, "AINA" }, + { "Capture", NULL, "AINB" }, + + { "AOUTA", NULL, "Playback" }, + { "AOUTB", NULL, "Playback" }, +}; + /** * struct cs4270_mode_ratios - clock ratio tables * @ratio: the ratio of MCLK to the sample rate @@ -612,6 +628,10 @@ static const struct snd_soc_codec_driver soc_codec_device_cs4270 = { .controls = cs4270_snd_controls, .num_controls = ARRAY_SIZE(cs4270_snd_controls), + .dapm_widgets = cs4270_dapm_widgets, + .num_dapm_widgets = ARRAY_SIZE(cs4270_dapm_widgets), + .dapm_routes = cs4270_dapm_routes, + .num_dapm_routes = ARRAY_SIZE(cs4270_dapm_routes), }; /* |