aboutsummaryrefslogtreecommitdiffstats
path: root/sound/soc/codecs/wm8580.c
diff options
context:
space:
mode:
authorMark Brown <broonie@opensource.wolfsonmicro.com>2009-06-13 17:30:18 -0400
committerMark Brown <broonie@opensource.wolfsonmicro.com>2009-06-13 17:30:18 -0400
commitb3b50b3f31775be5d2e441618bbc1c5cbee4d9f1 (patch)
tree22171b96e3138fcea12f9845bc3f26358c7bfa6a /sound/soc/codecs/wm8580.c
parent831dc0f10f7b2a4856094ff160c018bf19f77527 (diff)
ASoC: Add suspend and resume callbacks to Wolfson CODEC drivers
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound/soc/codecs/wm8580.c')
-rw-r--r--sound/soc/codecs/wm8580.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/sound/soc/codecs/wm8580.c b/sound/soc/codecs/wm8580.c
index 86c4b24db817..261ef101d4fc 100644
--- a/sound/soc/codecs/wm8580.c
+++ b/sound/soc/codecs/wm8580.c
@@ -995,6 +995,21 @@ static int wm8580_i2c_remove(struct i2c_client *client)
995 return 0; 995 return 0;
996} 996}
997 997
998#ifdef CONFIG_PM
999static int wm8580_i2c_suspend(struct i2c_client *client, pm_message_t msg)
1000{
1001 return snd_soc_suspend_device(&client->dev);
1002}
1003
1004static int wm8580_i2c_resume(struct i2c_client *client)
1005{
1006 return snd_soc_resume_device(&client->dev);
1007}
1008#else
1009#define wm8580_i2c_suspend NULL
1010#define wm8580_i2c_resume NULL
1011#endif
1012
998static const struct i2c_device_id wm8580_i2c_id[] = { 1013static const struct i2c_device_id wm8580_i2c_id[] = {
999 { "wm8580", 0 }, 1014 { "wm8580", 0 },
1000 { } 1015 { }
@@ -1008,6 +1023,8 @@ static struct i2c_driver wm8580_i2c_driver = {
1008 }, 1023 },
1009 .probe = wm8580_i2c_probe, 1024 .probe = wm8580_i2c_probe,
1010 .remove = wm8580_i2c_remove, 1025 .remove = wm8580_i2c_remove,
1026 .suspend = wm8580_i2c_suspend,
1027 .resume = wm8580_i2c_resume,
1011 .id_table = wm8580_i2c_id, 1028 .id_table = wm8580_i2c_id,
1012}; 1029};
1013#endif 1030#endif