net/fsl: treat fsl,erratum-a011043
authorMadalin Bucur <madalin.bucur@oss.nxp.com>
Wed, 22 Jan 2020 13:20:29 +0000 (15:20 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 5 Feb 2020 21:22:51 +0000 (21:22 +0000)
commite2c797b72e014027bf0330f2b97b69ddb4156a6b
tree5496c2d533130c3f7069911c9a54ec9fbbaa11fa
parent1ce13ed0a5deaddc4d1c6e09160333dda9fb1815
net/fsl: treat fsl,erratum-a011043

[ Upstream commit 1d3ca681b9d9575ccf696ebc2840a1ebb1fd4074 ]

When fsl,erratum-a011043 is set, adjust for erratum A011043:
MDIO reads to internal PCS registers may result in having
the MDIO_CFG[MDIO_RD_ER] bit set, even when there is no
error and read data (MDIO_DATA[MDIO_DATA]) is correct.
Software may get false read error when reading internal
PCS registers through MDIO. As a workaround, all internal
MDIO accesses should ignore the MDIO_CFG[MDIO_RD_ER] bit.

Signed-off-by: Madalin Bucur <madalin.bucur@oss.nxp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/freescale/xgmac_mdio.c