Re: [PATCH 4/8] iio: adc: axi-adc: make sure AXI clock is enabled

Jonathan Cameron
2024-04-20T15:04:54Z

On Fri, 19 Apr 2024 17:36:47 +0200
Nuno Sa via B4 Relay <devnull+nuno.sa.analog.com@kernel.org> wrote:

> From: Nuno Sa <nuno.sa@analog.com>
>
> We can only access the IP core registers if the bus clock is enabled. As
> such we need to get and enable it and not rely on anyone else to do it.
>
> Signed-off-by: Nuno Sa <nuno.sa@analog.com>
Likewise - smells like a fix, but no fixes tag?

> ---
> drivers/iio/adc/adi-axi-adc.c | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/drivers/iio/adc/adi-axi-adc.c b/drivers/iio/adc/adi-axi-adc.c
> index a543b91124b07..e3b2158829416 100644
> --- a/drivers/iio/adc/adi-axi-adc.c
> +++ b/drivers/iio/adc/adi-axi-adc.c
> @@ -175,6 +175,7 @@ static int adi_axi_adc_probe(struct platform_device *pdev)
> struct adi_axi_adc_state *st;
> void __iomem *base;
> unsigned int ver;
> + struct clk *clk;
> int ret;
>
> st = devm_kzalloc(&pdev->dev, sizeof(*st), GFP_KERNEL);
> @@ -195,6 +196,10 @@ static int adi_axi_adc_probe(struct platform_device *pdev)
> if (!expected_ver)
> return -ENODEV;
>
> + clk = devm_clk_get_enabled(&pdev->dev, NULL);
> + if (IS_ERR(clk))
> + return PTR_ERR(clk);
> +
> /*
> * Force disable the core. Up to the frontend to enable us. And we can
> * still read/write registers...
>