net: ethernet: mediatek: add mtk_hw_deinit call as the opposite to mtk_hw_init call
grouping things related to the deinitialization of what mtk_hw_init call does that help to be reused by the reset process and the error path handling. Signed-off-by: Sean Wang <sean.wang@mediatek.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
85574dbf9d
commit
bf253fb722
|
@ -1477,6 +1477,16 @@ static int __init mtk_hw_init(struct mtk_eth *eth)
|
|||
return 0;
|
||||
}
|
||||
|
||||
static int mtk_hw_deinit(struct mtk_eth *eth)
|
||||
{
|
||||
clk_disable_unprepare(eth->clks[MTK_CLK_GP2]);
|
||||
clk_disable_unprepare(eth->clks[MTK_CLK_GP1]);
|
||||
clk_disable_unprepare(eth->clks[MTK_CLK_ESW]);
|
||||
clk_disable_unprepare(eth->clks[MTK_CLK_ETHIF]);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int __init mtk_init(struct net_device *dev)
|
||||
{
|
||||
struct mtk_mac *mac = netdev_priv(dev);
|
||||
|
@ -1926,10 +1936,7 @@ static int mtk_remove(struct platform_device *pdev)
|
|||
mtk_stop(eth->netdev[i]);
|
||||
}
|
||||
|
||||
clk_disable_unprepare(eth->clks[MTK_CLK_ETHIF]);
|
||||
clk_disable_unprepare(eth->clks[MTK_CLK_ESW]);
|
||||
clk_disable_unprepare(eth->clks[MTK_CLK_GP1]);
|
||||
clk_disable_unprepare(eth->clks[MTK_CLK_GP2]);
|
||||
mtk_hw_deinit(eth);
|
||||
|
||||
netif_napi_del(ð->tx_napi);
|
||||
netif_napi_del(ð->rx_napi);
|
||||
|
|
Loading…
Reference in New Issue