ASoC: sti: fix missing clk_disable_unprepare() on error in uni_player_start()
authorWei Yongjun <weiyongjun1@huawei.com>
Sat, 17 Sep 2016 01:34:33 +0000 (01:34 +0000)
committerMark Brown <broonie@kernel.org>
Mon, 19 Sep 2016 10:25:31 +0000 (11:25 +0100)
Fix the missing clk_disable_unprepare() before return
from uni_player_start() in the error handling case.

Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
Acked-by: Arnaud Pouliquen <arnaud.pouliquen@st.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sti/uniperif_player.c

index 645e415..1bc8ebc 100644 (file)
@@ -893,8 +893,10 @@ static int uni_player_start(struct uniperif *player)
        SET_UNIPERIF_SOFT_RST_SOFT_RST(player);
 
        ret = reset_player(player);
-       if (ret < 0)
+       if (ret < 0) {
+               clk_disable_unprepare(player->clk);
                return ret;
+       }
 
        /*
         * Does not use IEC61937 features of the uniperipheral hardware.