Commit 7a2bbd8d authored by Fabio Estevam's avatar Fabio Estevam Committed by David S. Miller

fec: Invert the order of error path sequence

Currently when fec_enet_init fails it jumps to 'failed_init' error path, which
will attemp to free the interrupts.

This is wrong because at this point the interrupts have not even been acquired.

Swap failed_init/failed_irq to fix the error path.
Signed-off-by: default avatarFabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent f4e9f3d2
...@@ -1975,13 +1975,13 @@ fec_probe(struct platform_device *pdev) ...@@ -1975,13 +1975,13 @@ fec_probe(struct platform_device *pdev)
failed_register: failed_register:
fec_enet_mii_remove(fep); fec_enet_mii_remove(fep);
failed_mii_init: failed_mii_init:
failed_init: failed_irq:
for (i = 0; i < FEC_IRQ_NUM; i++) { for (i = 0; i < FEC_IRQ_NUM; i++) {
irq = platform_get_irq(pdev, i); irq = platform_get_irq(pdev, i);
if (irq > 0) if (irq > 0)
free_irq(irq, ndev); free_irq(irq, ndev);
} }
failed_irq: failed_init:
failed_regulator: failed_regulator:
clk_disable_unprepare(fep->clk_ahb); clk_disable_unprepare(fep->clk_ahb);
clk_disable_unprepare(fep->clk_ipg); clk_disable_unprepare(fep->clk_ipg);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment