summaryrefslogtreecommitdiffstats
path: root/sound/soc/codecs/si476x.c
diff options
context:
space:
mode:
authorMark Brown2013-08-16 12:54:51 +0200
committerMark Brown2013-08-18 17:27:48 +0200
commitac0b82b17894120b21937d0031fd0080b3ee2d83 (patch)
tree4eef203c5a90d6f039cc94ff8d10ee2c57bf1388 /sound/soc/codecs/si476x.c
parentLinux 3.11-rc5 (diff)
downloadkernel-qcow2-linux-ac0b82b17894120b21937d0031fd0080b3ee2d83.tar.gz
kernel-qcow2-linux-ac0b82b17894120b21937d0031fd0080b3ee2d83.tar.xz
kernel-qcow2-linux-ac0b82b17894120b21937d0031fd0080b3ee2d83.zip
ASoC: si476x: Add DAPM support
This ensures the driver continues to work with DAPM mandatory and makes it easier to connect the device up to other components in the subsystem. Signed-off-by: Mark Brown <broonie@linaro.org> Acked-by: Andrey Smirnov <andrew.smirnov@gmail.com>
Diffstat (limited to 'sound/soc/codecs/si476x.c')
-rw-r--r--sound/soc/codecs/si476x.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/sound/soc/codecs/si476x.c b/sound/soc/codecs/si476x.c
index 73e205c892a0..38f3b105c17d 100644
--- a/sound/soc/codecs/si476x.c
+++ b/sound/soc/codecs/si476x.c
@@ -102,6 +102,16 @@ static int si476x_codec_write(struct snd_soc_codec *codec,
return err;
}
+static const struct snd_soc_dapm_widget si476x_dapm_widgets[] = {
+SND_SOC_DAPM_OUTPUT("LOUT"),
+SND_SOC_DAPM_OUTPUT("ROUT"),
+};
+
+static const struct snd_soc_dapm_route si476x_dapm_routes[] = {
+ { "Capture", NULL, "LOUT" },
+ { "Capture", NULL, "ROUT" },
+};
+
static int si476x_codec_set_dai_fmt(struct snd_soc_dai *codec_dai,
unsigned int fmt)
{
@@ -260,6 +270,10 @@ static struct snd_soc_codec_driver soc_codec_dev_si476x = {
.probe = si476x_codec_probe,
.read = si476x_codec_read,
.write = si476x_codec_write,
+ .dapm_widgets = si476x_dapm_widgets,
+ .num_dapm_widgets = ARRAY_SIZE(si476x_dapm_widgets),
+ .dapm_routes = si476x_dapm_routes,
+ .num_dapm_routes = ARRAY_SIZE(si476x_dapm_routes),
};
static int si476x_platform_probe(struct platform_device *pdev)