提交 8a3f3f24 编写于 作者: Q Quentin Schulz 提交者: Marc Kleine-Budde

can: m_can: make m_can_start and m_can_stop symmetric

This moves clocks gating outside of the m_can_stop function as the
m_can_start function does not (and cannot, at least in current
implementation) ungate clocks. This way, both functions can now be used
symmetrically.
Signed-off-by: NQuentin Schulz <quentin.schulz@free-electrons.com>
Signed-off-by: NMarc Kleine-Budde <mkl@pengutronix.de>
上级 6a792e81
......@@ -1324,9 +1324,6 @@ static void m_can_stop(struct net_device *dev)
/* disable all interrupts */
m_can_disable_all_interrupts(priv);
clk_disable_unprepare(priv->hclk);
clk_disable_unprepare(priv->cclk);
/* set the state as STOPPED */
priv->can.state = CAN_STATE_STOPPED;
}
......@@ -1338,6 +1335,8 @@ static int m_can_close(struct net_device *dev)
netif_stop_queue(dev);
napi_disable(&priv->napi);
m_can_stop(dev);
clk_disable_unprepare(priv->hclk);
clk_disable_unprepare(priv->cclk);
free_irq(dev->irq, dev);
close_candev(dev);
can_led_event(dev, CAN_LED_EVENT_STOP);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册