diff options
author | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2009-07-10 17:24:27 -0400 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2009-08-03 11:59:09 -0400 |
commit | 7084a42b965d972079201414d19a399e65b26099 (patch) | |
tree | 391a0ed913eb769013ca65e3c042ac043981dbfa /include | |
parent | 030c819e79e8ad0320486e9ccbe76d2f0870369f (diff) |
ASoC: Add I/O control bus information to factored out cache setup
While writes tend to be able to use a fairly bus independant format to
do the writes reads are all bus specific. To allow us to factor out
this code include the bus type as a parameter when setting up the
cache.
Initially just use this to factor out hw_write_t for I2C.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/sound/soc.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/include/sound/soc.h b/include/sound/soc.h index 27409dd41ae9..d0b29a509bdd 100644 --- a/include/sound/soc.h +++ b/include/sound/soc.h | |||
@@ -187,13 +187,20 @@ typedef int (*hw_read_t)(void *,char* ,int); | |||
187 | 187 | ||
188 | extern struct snd_ac97_bus_ops soc_ac97_ops; | 188 | extern struct snd_ac97_bus_ops soc_ac97_ops; |
189 | 189 | ||
190 | enum snd_soc_control_type { | ||
191 | SND_SOC_CUSTOM, | ||
192 | SND_SOC_I2C, | ||
193 | SND_SOC_SPI, | ||
194 | }; | ||
195 | |||
190 | int snd_soc_register_platform(struct snd_soc_platform *platform); | 196 | int snd_soc_register_platform(struct snd_soc_platform *platform); |
191 | void snd_soc_unregister_platform(struct snd_soc_platform *platform); | 197 | void snd_soc_unregister_platform(struct snd_soc_platform *platform); |
192 | int snd_soc_register_codec(struct snd_soc_codec *codec); | 198 | int snd_soc_register_codec(struct snd_soc_codec *codec); |
193 | void snd_soc_unregister_codec(struct snd_soc_codec *codec); | 199 | void snd_soc_unregister_codec(struct snd_soc_codec *codec); |
194 | int snd_soc_codec_volatile_register(struct snd_soc_codec *codec, int reg); | 200 | int snd_soc_codec_volatile_register(struct snd_soc_codec *codec, int reg); |
195 | int snd_soc_codec_set_cache_io(struct snd_soc_codec *codec, | 201 | int snd_soc_codec_set_cache_io(struct snd_soc_codec *codec, |
196 | int addr_bits, int data_bits); | 202 | int addr_bits, int data_bits, |
203 | enum snd_soc_control_type control); | ||
197 | 204 | ||
198 | #ifdef CONFIG_PM | 205 | #ifdef CONFIG_PM |
199 | int snd_soc_suspend_device(struct device *dev); | 206 | int snd_soc_suspend_device(struct device *dev); |