Messages in this thread Patch in this message | | | From | Liu Xiang <> | Subject | [PATCH] net: fec: disable correct clk in the err path of fec_enet_clk_enable | Date | Fri, 29 May 2020 23:24:56 +0800 |
| |
When enable clk_ref failed, clk_ptp should be disabled rather than clk_ref itself.
Signed-off-by: Liu Xiang <liuxiang_1999@126.com> --- drivers/net/ethernet/freescale/fec_main.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/freescale/fec_main.c b/drivers/net/ethernet/freescale/fec_main.c index dc6f876..ac8d868 100644 --- a/drivers/net/ethernet/freescale/fec_main.c +++ b/drivers/net/ethernet/freescale/fec_main.c @@ -1986,8 +1986,12 @@ static int fec_enet_clk_enable(struct net_device *ndev, bool enable) return 0; failed_clk_ref: - if (fep->clk_ref) - clk_disable_unprepare(fep->clk_ref); + if (fep->clk_ptp) { + mutex_lock(&fep->ptp_clk_mutex); + clk_disable_unprepare(fep->clk_ptp); + fep->ptp_clk_on = false; + mutex_unlock(&fep->ptp_clk_mutex); + } failed_clk_ptp: if (fep->clk_enet_out) clk_disable_unprepare(fep->clk_enet_out); -- 1.9.1
| |