File tree Expand file tree Collapse file tree 1 file changed +12
-6
lines changed
drivers/net/ethernet/cadence Expand file tree Collapse file tree 1 file changed +12
-6
lines changed Original file line number Diff line number Diff line change @@ -2506,19 +2506,25 @@ static int macb_open(struct net_device *dev)
25062506
25072507 err = macb_phylink_connect (bp );
25082508 if (err )
2509- goto pm_exit ;
2509+ goto reset_hw ;
25102510
25112511 netif_tx_start_all_queues (dev );
25122512
25132513 if (bp -> ptp_info )
25142514 bp -> ptp_info -> ptp_init (dev );
25152515
2516- pm_exit :
2517- if (err ) {
2518- pm_runtime_put_sync (& bp -> pdev -> dev );
2519- return err ;
2520- }
25212516 return 0 ;
2517+
2518+ reset_hw :
2519+ macb_reset_hw (bp );
2520+ for (q = 0 , queue = bp -> queues ; q < bp -> num_queues ; ++ q , ++ queue )
2521+ napi_disable (& queue -> napi );
2522+ macb_free_consistent (bp );
2523+
2524+ pm_exit :
2525+ pm_runtime_put_sync (& bp -> pdev -> dev );
2526+
2527+ return err ;
25222528}
25232529
25242530static int macb_close (struct net_device * dev )
You can’t perform that action at this time.
0 commit comments