ASoC: stm32: sai: add missing put_device()

commit 1c3816a194870e7a6622345dab7fb56c7d708613 upstream.

The of_find_device_by_node() takes a reference to the underlying device
structure, we should release that reference.

Fixes: 7dd0d835582f ("ASoC: stm32: sai: simplify sync modes management")
Signed-off-by: Wen Yang <yellowriver2010@hotmail.com>
Acked-by: Olivier Moysan <olivier.moysan@st.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Wen Yang 2019-02-09 10:41:09 +00:00 committed by Greg Kroah-Hartman
parent 86c823d4a9
commit f0b7d56f1f

View File

@ -112,16 +112,21 @@ static int stm32_sai_set_sync(struct stm32_sai_data *sai_client,
if (!sai_provider) {
dev_err(&sai_client->pdev->dev,
"SAI sync provider data not found\n");
return -EINVAL;
ret = -EINVAL;
goto out_put_dev;
}
/* Configure sync client */
ret = stm32_sai_sync_conf_client(sai_client, synci);
if (ret < 0)
return ret;
goto out_put_dev;
/* Configure sync provider */
return stm32_sai_sync_conf_provider(sai_provider, synco);
ret = stm32_sai_sync_conf_provider(sai_provider, synco);
out_put_dev:
put_device(&pdev->dev);
return ret;
}
static int stm32_sai_probe(struct platform_device *pdev)