Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1c5ea2b4 authored by Fabio Estevam's avatar Fabio Estevam Committed by Mark Brown
Browse files

spi: spi-fsl-dspi: Check clk_prepare_enable() error



clk_prepare_enable() may fail, so we should better check its
return value and propagate it in the case of failure.

Signed-off-by: default avatarFabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 53d89160
Loading
Loading
Loading
Loading
+7 −2
Original line number Original line Diff line number Diff line
@@ -624,10 +624,13 @@ static int dspi_resume(struct device *dev)
{
{
	struct spi_master *master = dev_get_drvdata(dev);
	struct spi_master *master = dev_get_drvdata(dev);
	struct fsl_dspi *dspi = spi_master_get_devdata(master);
	struct fsl_dspi *dspi = spi_master_get_devdata(master);
	int ret;


	pinctrl_pm_select_default_state(dev);
	pinctrl_pm_select_default_state(dev);


	clk_prepare_enable(dspi->clk);
	ret = clk_prepare_enable(dspi->clk);
	if (ret)
		return ret;
	spi_master_resume(master);
	spi_master_resume(master);


	return 0;
	return 0;
@@ -726,7 +729,9 @@ static int dspi_probe(struct platform_device *pdev)
		dev_err(&pdev->dev, "unable to get clock\n");
		dev_err(&pdev->dev, "unable to get clock\n");
		goto out_master_put;
		goto out_master_put;
	}
	}
	clk_prepare_enable(dspi->clk);
	ret = clk_prepare_enable(dspi->clk);
	if (ret)
		goto out_master_put;


	master->max_speed_hz =
	master->max_speed_hz =
		clk_get_rate(dspi->clk) / dspi->devtype_data->max_clock_factor;
		clk_get_rate(dspi->clk) / dspi->devtype_data->max_clock_factor;