net: macb: Apply RXUBR workaround only to versions with errata
authorHarini Katakam <harini.katakam@xilinx.com>
Tue, 29 Jan 2019 09:50:03 +0000 (15:20 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 13 Mar 2019 21:02:31 +0000 (14:02 -0700)
commitbd13a72a537af1ddf2ae744df8a9193e64f18495
tree34c3d22ab5ee16a093af634e170bbb113af522c7
parent38be5d445c5b5b2bfc84a1fa1c4a6d26860490db
net: macb: Apply RXUBR workaround only to versions with errata

[ Upstream commit e501070e4db0b67a4c17a5557d1e9d098f3db310 ]

The interrupt handler contains a workaround for RX hang applicable
to Zynq and AT91RM9200 only. Subsequent versions do not need this
workaround. This workaround unnecessarily resets RX whenever RX used
bit read is observed, which can be often under heavy traffic. There
is no other action performed on RX UBR interrupt. Hence introduce a
CAPS mask; enable this interrupt and workaround only on affected
versions.

Signed-off-by: Harini Katakam <harini.katakam@xilinx.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/cadence/macb.h
drivers/net/ethernet/cadence/macb_main.c