diff mbox

mtd: spi-nor: hisi: do not ignore clk_prepare_enable() failure

Message ID 1487369297-5810-1-git-send-email-khoroshilov@ispras.ru
State Accepted
Commit 0a5165a83c624cddb3dfa227a9324acac9ec413c
Delegated to: Cyrille Pitchen
Headers show

Commit Message

Alexey Khoroshilov Feb. 17, 2017, 10:08 p.m. UTC
hisi_spi_nor_probe() ignores clk_prepare_enable() error code.
The patch fixes that.

Found by Linux Driver Verification project (linuxtesting.org).

Signed-off-by: Alexey Khoroshilov <khoroshilov@ispras.ru>
---
 drivers/mtd/spi-nor/hisi-sfc.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

Comments

Marek Vasut Feb. 18, 2017, 3:23 p.m. UTC | #1
On 02/17/2017 11:08 PM, Alexey Khoroshilov wrote:
> hisi_spi_nor_probe() ignores clk_prepare_enable() error code.
> The patch fixes that.
> 
> Found by Linux Driver Verification project (linuxtesting.org).
> 
> Signed-off-by: Alexey Khoroshilov <khoroshilov@ispras.ru>

Acked-by: Marek Vasut <marek.vasut@gmail.com>

> ---
>  drivers/mtd/spi-nor/hisi-sfc.c | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/mtd/spi-nor/hisi-sfc.c b/drivers/mtd/spi-nor/hisi-sfc.c
> index 20378b0d55e9..a286350627a6 100644
> --- a/drivers/mtd/spi-nor/hisi-sfc.c
> +++ b/drivers/mtd/spi-nor/hisi-sfc.c
> @@ -448,8 +448,11 @@ static int hisi_spi_nor_probe(struct platform_device *pdev)
>  	if (!host->buffer)
>  		return -ENOMEM;
>  
> +	ret = clk_prepare_enable(host->clk);
> +	if (ret)
> +		return ret;
> +
>  	mutex_init(&host->lock);
> -	clk_prepare_enable(host->clk);
>  	hisi_spi_nor_init(host);
>  	ret = hisi_spi_nor_register_all(host);
>  	if (ret)
>
Cyrille Pitchen March 7, 2017, 8:57 p.m. UTC | #2
Le 18/02/2017 à 16:23, Marek Vasut a écrit :
> On 02/17/2017 11:08 PM, Alexey Khoroshilov wrote:
>> hisi_spi_nor_probe() ignores clk_prepare_enable() error code.
>> The patch fixes that.
>>
>> Found by Linux Driver Verification project (linuxtesting.org).
>>
>> Signed-off-by: Alexey Khoroshilov <khoroshilov@ispras.ru>
> 
> Acked-by: Marek Vasut <marek.vasut@gmail.com>
> 
Applied to spi-nor/next

Thanks!

>> ---
>>  drivers/mtd/spi-nor/hisi-sfc.c | 5 ++++-
>>  1 file changed, 4 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/mtd/spi-nor/hisi-sfc.c b/drivers/mtd/spi-nor/hisi-sfc.c
>> index 20378b0d55e9..a286350627a6 100644
>> --- a/drivers/mtd/spi-nor/hisi-sfc.c
>> +++ b/drivers/mtd/spi-nor/hisi-sfc.c
>> @@ -448,8 +448,11 @@ static int hisi_spi_nor_probe(struct platform_device *pdev)
>>  	if (!host->buffer)
>>  		return -ENOMEM;
>>  
>> +	ret = clk_prepare_enable(host->clk);
>> +	if (ret)
>> +		return ret;
>> +
>>  	mutex_init(&host->lock);
>> -	clk_prepare_enable(host->clk);
>>  	hisi_spi_nor_init(host);
>>  	ret = hisi_spi_nor_register_all(host);
>>  	if (ret)
>>
> 
>
diff mbox

Patch

diff --git a/drivers/mtd/spi-nor/hisi-sfc.c b/drivers/mtd/spi-nor/hisi-sfc.c
index 20378b0d55e9..a286350627a6 100644
--- a/drivers/mtd/spi-nor/hisi-sfc.c
+++ b/drivers/mtd/spi-nor/hisi-sfc.c
@@ -448,8 +448,11 @@  static int hisi_spi_nor_probe(struct platform_device *pdev)
 	if (!host->buffer)
 		return -ENOMEM;
 
+	ret = clk_prepare_enable(host->clk);
+	if (ret)
+		return ret;
+
 	mutex_init(&host->lock);
-	clk_prepare_enable(host->clk);
 	hisi_spi_nor_init(host);
 	ret = hisi_spi_nor_register_all(host);
 	if (ret)