aboutsummaryrefslogtreecommitdiffstats
path: root/include/sound
diff options
context:
space:
mode:
authorLars-Peter Clausen <lars@metafoo.de>2014-03-18 04:02:10 -0400
committerMark Brown <broonie@linaro.org>2014-03-19 09:07:30 -0400
commit28d6d175d842b8dd6ac7fa10fa6e610b19fd9d86 (patch)
treedcc974b63f8b6cb1a78b44c0497f60685c0af80c /include/sound
parent5c1d5f091dc39eecf9a34a8be01492d14c23ad91 (diff)
ASoC: Add helper function to cast component back to CODEC
Add a helper function to cast back from a component struct to the CODEC struct it is embedded in. This is useful in situations where we know that a certain component is a CODEC and want to get access to some CODEC specific properties. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Mark Brown <broonie@linaro.org>
Diffstat (limited to 'include/sound')
-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 37b470c1e127..9ce6d20899b4 100644
--- a/include/sound/soc.h
+++ b/include/sound/soc.h
@@ -1104,6 +1104,19 @@ struct soc_enum {
1104 const unsigned int *values; 1104 const unsigned int *values;
1105}; 1105};
1106 1106
1107/**
1108 * snd_soc_component_to_codec() - Casts a component to the CODEC it is embedded in
1109 * @component: The component to cast to a CODEC
1110 *
1111 * This function must only be used on components that are known to be CODECs.
1112 * Otherwise the behavior is undefined.
1113 */
1114static inline struct snd_soc_codec *snd_soc_component_to_codec(
1115 struct snd_soc_component *component)
1116{
1117 return container_of(component, struct snd_soc_codec, component);
1118}
1119
1107/* codec IO */ 1120/* codec IO */
1108unsigned int snd_soc_read(struct snd_soc_codec *codec, unsigned int reg); 1121unsigned int snd_soc_read(struct snd_soc_codec *codec, unsigned int reg);
1109unsigned int snd_soc_write(struct snd_soc_codec *codec, 1122unsigned int snd_soc_write(struct snd_soc_codec *codec,