ASoC: rcar: call missing of_clk_del_provider() when remove
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Thu, 30 Mar 2017 01:49:27 +0000 (01:49 +0000)
committerMark Brown <broonie@kernel.org>
Thu, 30 Mar 2017 21:22:32 +0000 (22:22 +0100)
adg is calling of_clk_add_provider() when probe time,
thus, remove should call of_clk_del_provider(), it doesn't now.
This patch fix this issue.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sh/rcar/adg.c

index 56107454bdb3c531f96ec45588d324a02a22a57b..9665c1fa7216427005b53bad03a21c79ac6e8625 100644 (file)
@@ -587,5 +587,10 @@ int rsnd_adg_probe(struct rsnd_priv *priv)
 
 void rsnd_adg_remove(struct rsnd_priv *priv)
 {
+       struct device *dev = rsnd_priv_to_dev(priv);
+       struct device_node *np = dev->of_node;
+
+       of_clk_del_provider(np);
+
        rsnd_adg_clk_disable(priv);
 }