snd_soc_dai_set_drvdata is not needed when the set data comes from
snd_soc_dai_get_drvdata or dev_get_drvdata.  The problem was fixed
usingthe following semantic patch: (http://coccinelle.lip6.fr/)

// <smpl>
@@
expression x,y,e;
@@
        x = dev_get_drvdata(y->dev)
        ... when != x = e
-       snd_soc_dai_set_drvdata(y,x);

@@
expression x,y,e;
@@
        x = snd_soc_dai_get_drvdata(y)
        ... when != x = e
-       snd_soc_dai_set_drvdata(y,x);
// </smpl>

Signed-off-by: Julia Lawall <julia.law...@inria.fr>

---
 sound/soc/sunxi/sun4i-i2s.c |    2 --
 1 file changed, 2 deletions(-)

diff --git a/sound/soc/sunxi/sun4i-i2s.c b/sound/soc/sunxi/sun4i-i2s.c
index 78506c3811dc..c57feae3396e 100644
--- a/sound/soc/sunxi/sun4i-i2s.c
+++ b/sound/soc/sunxi/sun4i-i2s.c
@@ -1079,8 +1079,6 @@ static int sun4i_i2s_dai_probe(struct snd_soc_dai *dai)
                                  &i2s->playback_dma_data,
                                  &i2s->capture_dma_data);
 
-       snd_soc_dai_set_drvdata(dai, i2s);
-
        return 0;
 }
 

Reply via email to