]> Pileus Git - ~andy/linux/blobdiff - sound/soc/codecs/wm8523.c
Merge branch 'topic/asoc' into for-linus
[~andy/linux] / sound / soc / codecs / wm8523.c
index d3a61d7ea0c509414e4a113def31b547fba33d6b..37242a7d307751d9876acee1c4e955e3029262b7 100644 (file)
@@ -19,6 +19,7 @@
 #include <linux/i2c.h>
 #include <linux/platform_device.h>
 #include <linux/regulator/consumer.h>
+#include <linux/slab.h>
 #include <sound/core.h>
 #include <sound/pcm.h>
 #include <sound/pcm_params.h>
@@ -137,7 +138,7 @@ static int wm8523_startup(struct snd_pcm_substream *substream,
                          struct snd_soc_dai *dai)
 {
        struct snd_soc_codec *codec = dai->codec;
-       struct wm8523_priv *wm8523 = codec->private_data;
+       struct wm8523_priv *wm8523 = snd_soc_codec_get_drvdata(codec);
 
        /* The set of sample rates that can be supported depends on the
         * MCLK supplied to the CODEC - enforce this.
@@ -163,7 +164,7 @@ static int wm8523_hw_params(struct snd_pcm_substream *substream,
        struct snd_soc_pcm_runtime *rtd = substream->private_data;
        struct snd_soc_device *socdev = rtd->socdev;
        struct snd_soc_codec *codec = socdev->card->codec;
-       struct wm8523_priv *wm8523 = codec->private_data;
+       struct wm8523_priv *wm8523 = snd_soc_codec_get_drvdata(codec);
        int i;
        u16 aifctrl1 = snd_soc_read(codec, WM8523_AIF_CTRL1);
        u16 aifctrl2 = snd_soc_read(codec, WM8523_AIF_CTRL2);
@@ -210,7 +211,7 @@ static int wm8523_set_dai_sysclk(struct snd_soc_dai *codec_dai,
                int clk_id, unsigned int freq, int dir)
 {
        struct snd_soc_codec *codec = codec_dai->codec;
-       struct wm8523_priv *wm8523 = codec->private_data;
+       struct wm8523_priv *wm8523 = snd_soc_codec_get_drvdata(codec);
        unsigned int val;
        int i;
 
@@ -317,7 +318,7 @@ static int wm8523_set_dai_fmt(struct snd_soc_dai *codec_dai,
 static int wm8523_set_bias_level(struct snd_soc_codec *codec,
                                 enum snd_soc_bias_level level)
 {
-       struct wm8523_priv *wm8523 = codec->private_data;
+       struct wm8523_priv *wm8523 = snd_soc_codec_get_drvdata(codec);
        int ret, i;
 
        switch (level) {
@@ -488,7 +489,7 @@ static int wm8523_register(struct wm8523_priv *wm8523,
        INIT_LIST_HEAD(&codec->dapm_widgets);
        INIT_LIST_HEAD(&codec->dapm_paths);
 
-       codec->private_data = wm8523;
+       snd_soc_codec_set_drvdata(codec, wm8523);
        codec->name = "WM8523";
        codec->owner = THIS_MODULE;
        codec->bias_level = SND_SOC_BIAS_OFF;