net: ethernet: ti: cpts: Handle error for clk_enable
authorJiasheng Jiang <jiasheng@iscas.ac.cn>
Tue, 8 Mar 2022 06:40:07 +0000 (14:40 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 16 Mar 2022 13:23:38 +0000 (14:23 +0100)
[ Upstream commit 6babfc6e6fab068018c36e8f6605184b8c0b349d ]

As the potential failure of the clk_enable(),
it should be better to check it and return error
if fails.

Fixes: 8a2c9a5ab4b9 ("net: ethernet: ti: cpts: rework initialization/deinitialization")
Signed-off-by: Jiasheng Jiang <jiasheng@iscas.ac.cn>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/ti/cpts.c

index 43222a34cba069b9bc10750cbd9a4bcdfc8b6228..f9514518700ebb7f70009b46583f66af968ec417 100644 (file)
@@ -568,7 +568,9 @@ int cpts_register(struct cpts *cpts)
        for (i = 0; i < CPTS_MAX_EVENTS; i++)
                list_add(&cpts->pool_data[i].list, &cpts->pool);
 
-       clk_enable(cpts->refclk);
+       err = clk_enable(cpts->refclk);
+       if (err)
+               return err;
 
        cpts_write32(cpts, CPTS_EN, control);
        cpts_write32(cpts, TS_PEND_EN, int_enable);