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 13:05:54 +0000 (13:05 +0000)
commitceab0797eac0decf39d5edc8a01a4e9be7ee6f4c
tree0789a8da2e89ee271317891d034f9cf43fbdff62
parentbab9f8f3a7b59fc2e17fcb6a327b9179df95bfd9
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