net: axienet: Cleanup DMA device reset and halt process
authorRobert Hancock <hancock@sedsystems.ca>
Thu, 6 Jun 2019 22:28:12 +0000 (16:28 -0600)
committerDavid S. Miller <davem@davemloft.net>
Thu, 6 Jun 2019 23:24:29 +0000 (16:24 -0700)
commit489d4d7713d1cad40b1049720b44d08f53918b30
tree40a79f3728e64a07e9092f76414a756690bcd0f8
parent7789e9ed0591bab4d8a419bf3b9b18327d75128f
net: axienet: Cleanup DMA device reset and halt process

The Xilinx DMA blocks each have their own reset register, but they both
reset the entire DMA engine, so only one of them needs to be reset.

Also, when stopping the device, we need to not just command the DMA
blocks to stop, but wait for them to stop, and trigger a device reset
to ensure that they are completely stopped.

Signed-off-by: Robert Hancock <hancock@sedsystems.ca>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/xilinx/xilinx_axienet.h
drivers/net/ethernet/xilinx/xilinx_axienet_main.c