]> git.karo-electronics.de Git - linux-beck.git/blobdiff - sound/soc/codecs/wm8940.c
ASoC: Factor out snd_soc_init_card()
[linux-beck.git] / sound / soc / codecs / wm8940.c
index 914d788a2b765ceab34bc4d2a7c634b5565e21ba..fc80aa6c913c21e547cbaf817744ab11fec768f9 100644 (file)
@@ -731,12 +731,6 @@ static int wm8940_probe(struct platform_device *pdev)
        if (ret)
                goto error_free_pcms;
 
-       ret = snd_soc_init_card(socdev);
-       if (ret < 0) {
-               dev_err(codec->dev, "failed to register card: %d\n", ret);
-               goto error_free_pcms;
-       }
-
        return ret;
 
 error_free_pcms:
@@ -790,7 +784,7 @@ static int wm8940_register(struct wm8940_priv *wm8940,
        codec->reg_cache = &wm8940->reg_cache;
 
        ret = snd_soc_codec_set_cache_io(codec, 8, 16, control);
-       if (ret == 0) {
+       if (ret < 0) {
                dev_err(codec->dev, "Failed to set cache I/O: %d\n", ret);
                return ret;
        }
@@ -877,21 +871,6 @@ static int __devexit wm8940_i2c_remove(struct i2c_client *client)
        return 0;
 }
 
-#ifdef CONFIG_PM
-static int wm8940_i2c_suspend(struct i2c_client *client, pm_message_t msg)
-{
-       return snd_soc_suspend_device(&client->dev);
-}
-
-static int wm8940_i2c_resume(struct i2c_client *client)
-{
-       return snd_soc_resume_device(&client->dev);
-}
-#else
-#define wm8940_i2c_suspend NULL
-#define wm8940_i2c_resume NULL
-#endif
-
 static const struct i2c_device_id wm8940_i2c_id[] = {
        { "wm8940", 0 },
        { }
@@ -905,8 +884,6 @@ static struct i2c_driver wm8940_i2c_driver = {
        },
        .probe = wm8940_i2c_probe,
        .remove = __devexit_p(wm8940_i2c_remove),
-       .suspend = wm8940_i2c_suspend,
-       .resume = wm8940_i2c_resume,
        .id_table = wm8940_i2c_id,
 };