summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMark Brown <broonie@linaro.org>2014-03-23 15:00:43 +0100
committerMark Brown <broonie@linaro.org>2014-03-23 15:00:43 +0100
commit9780b68435eea68906bcf8f34c5522b5b087f4be (patch)
tree6dfdd48c30b10bb42dfd6e65c9ae974b3e949fa2
parentMerge tag 'asoc-v3.15-2' into asoc-next (diff)
parentASoC: Add helper function to cast component back to CODEC (diff)
downloadlinux-9780b68435eea68906bcf8f34c5522b5b087f4be.tar.xz
linux-9780b68435eea68906bcf8f34c5522b5b087f4be.zip
Merge remote-tracking branch 'asoc/topic/core' into asoc-next
-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,