diff options
author | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2008-12-03 14:40:30 -0500 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2008-12-09 05:49:27 -0500 |
commit | 12a48a8c0087ba39d926cf1d63938ccbdb9752c3 (patch) | |
tree | 4fc400e27b9f524a908ec24b854131c435be2722 /include/sound | |
parent | 3f4b783cfdebb559814690572041a17bc9744cf3 (diff) |
ASoC: Add platform registration API
ASoC v2 allows platform drivers to instantiate independantly of the
overall ASoC card. This API allows drivers to notify the core when
they are registered.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'include/sound')
-rw-r--r-- | include/sound/soc.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/include/sound/soc.h b/include/sound/soc.h index 4a578b5d855c..ce3661d07c24 100644 --- a/include/sound/soc.h +++ b/include/sound/soc.h | |||
@@ -149,6 +149,7 @@ struct snd_soc_ops; | |||
149 | struct snd_soc_dai_mode; | 149 | struct snd_soc_dai_mode; |
150 | struct snd_soc_pcm_runtime; | 150 | struct snd_soc_pcm_runtime; |
151 | struct snd_soc_dai; | 151 | struct snd_soc_dai; |
152 | struct snd_soc_platform; | ||
152 | struct snd_soc_codec; | 153 | struct snd_soc_codec; |
153 | struct soc_enum; | 154 | struct soc_enum; |
154 | struct snd_soc_ac97_ops; | 155 | struct snd_soc_ac97_ops; |
@@ -158,6 +159,9 @@ typedef int (*hw_read_t)(void *,char* ,int); | |||
158 | 159 | ||
159 | extern struct snd_ac97_bus_ops soc_ac97_ops; | 160 | extern struct snd_ac97_bus_ops soc_ac97_ops; |
160 | 161 | ||
162 | int snd_soc_register_platform(struct snd_soc_platform *platform); | ||
163 | void snd_soc_unregister_platform(struct snd_soc_platform *platform); | ||
164 | |||
161 | /* pcm <-> DAI connect */ | 165 | /* pcm <-> DAI connect */ |
162 | void snd_soc_free_pcms(struct snd_soc_device *socdev); | 166 | void snd_soc_free_pcms(struct snd_soc_device *socdev); |
163 | int snd_soc_new_pcms(struct snd_soc_device *socdev, int idx, const char *xid); | 167 | int snd_soc_new_pcms(struct snd_soc_device *socdev, int idx, const char *xid); |
@@ -296,6 +300,7 @@ struct snd_soc_codec_device { | |||
296 | /* SoC platform interface */ | 300 | /* SoC platform interface */ |
297 | struct snd_soc_platform { | 301 | struct snd_soc_platform { |
298 | char *name; | 302 | char *name; |
303 | struct list_head list; | ||
299 | 304 | ||
300 | int (*probe)(struct platform_device *pdev); | 305 | int (*probe)(struct platform_device *pdev); |
301 | int (*remove)(struct platform_device *pdev); | 306 | int (*remove)(struct platform_device *pdev); |