]> git.baikalelectronics.ru Git - kernel.git/commit
net: broadcom: bcm4908_enet: reset DMA rings sw indexes properly
authorRafał Miłecki <rafal@milecki.pl>
Tue, 22 Jun 2021 05:24:15 +0000 (07:24 +0200)
committerDavid S. Miller <davem@davemloft.net>
Tue, 22 Jun 2021 17:34:13 +0000 (10:34 -0700)
commit3fab5e54658f973cd6295b41642f9c4b0103fd41
treeba3d0cdf4100cf82a6a2631d21246707fe6ad354
parentb3f4e6f795c9f4176eb17a01ec4bd6edd9072719
net: broadcom: bcm4908_enet: reset DMA rings sw indexes properly

Resetting software indexes in bcm4908_dma_alloc_buf_descs() is not
enough as it's called during device probe only. Driver resets DMA on
every .ndo_open callback and it's required to reset indexes then.

This fixes inconsistent rings state and stalled traffic after interface
down & up sequence.

Fixes: b375fb67f6a6 ("net: broadcom: bcm4908enet: add BCM4908 controller driver")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/broadcom/bcm4908_enet.c