summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorMark Brown <broonie@linaro.org>2014-04-08 21:22:09 +0100
committerMark Brown <broonie@linaro.org>2014-04-08 21:22:09 +0100
commite9b433cf86ff4a314f3992fe0b7a9fe26cc5072a (patch)
tree2db2b63e1c5c3c17b9b2834f8f575411add92cc6 /include
parentf7cf71e3dfe90cff6ab426e78958758d4e2ebfeb (diff)
parente090d5b6ad20056ec0ef58727e3ae95fd82be090 (diff)
downloadlinux-stable-e9b433cf86ff4a314f3992fe0b7a9fe26cc5072a.tar.gz
linux-stable-e9b433cf86ff4a314f3992fe0b7a9fe26cc5072a.tar.bz2
linux-stable-e9b433cf86ff4a314f3992fe0b7a9fe26cc5072a.zip
Merge tag 'asoc-v3.15-3' into asoc-linus
ASoC: Updates for v3.15 A few more updates for the merge window: - Fixes for the simple-card DAI format DT mess. - A new driver for Cirrus cs42xx8 devices. - DT support for a couple more devices. - A revert of a previous buggy fix for soc-pcm, plus a few more fixes and cleanups. # gpg: Signature made Sun 23 Mar 2014 16:56:11 GMT using RSA key ID 7EA229BD # gpg: Good signature from "Mark Brown <broonie@sirena.org.uk>" # gpg: aka "Mark Brown <broonie@debian.org>" # gpg: aka "Mark Brown <broonie@kernel.org>" # gpg: aka "Mark Brown <broonie@tardis.ed.ac.uk>" # gpg: aka "Mark Brown <broonie@linaro.org>" # gpg: aka "Mark Brown <Mark.Brown@linaro.org>"
Diffstat (limited to 'include')
-rw-r--r--include/sound/soc.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/include/sound/soc.h b/include/sound/soc.h
index f7de629728bf..0b83168d8ff4 100644
--- a/include/sound/soc.h
+++ b/include/sound/soc.h
@@ -1107,6 +1107,19 @@ struct soc_enum {
const unsigned int *values;
};
+/**
+ * snd_soc_component_to_codec() - Casts a component to the CODEC it is embedded in
+ * @component: The component to cast to a CODEC
+ *
+ * This function must only be used on components that are known to be CODECs.
+ * Otherwise the behavior is undefined.
+ */
+static inline struct snd_soc_codec *snd_soc_component_to_codec(
+ struct snd_soc_component *component)
+{
+ return container_of(component, struct snd_soc_codec, component);
+}
+
/* codec IO */
unsigned int snd_soc_read(struct snd_soc_codec *codec, unsigned int reg);
unsigned int snd_soc_write(struct snd_soc_codec *codec,