Mario Scheithauer has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/68214 )
Change subject: soc/intel/ehl: Fix incorrect access to MAC_MDIO_DATA register ......................................................................
soc/intel/ehl: Fix incorrect access to MAC_MDIO_DATA register
Function 'setbits16' clears the data register first. This leads to incorrect register entries for external accesses.
Change-Id: I0212420be770e2ffdabebbfaf5dfbf8d99d25915 Signed-off-by: Mario Scheithauer mario.scheithauer@siemens.com --- M src/soc/intel/elkhartlake/tsn_gbe.c 1 file changed, 14 insertions(+), 1 deletion(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/14/68214/1
diff --git a/src/soc/intel/elkhartlake/tsn_gbe.c b/src/soc/intel/elkhartlake/tsn_gbe.c index 49ce4da..3e08897 100644 --- a/src/soc/intel/elkhartlake/tsn_gbe.c +++ b/src/soc/intel/elkhartlake/tsn_gbe.c @@ -72,7 +72,7 @@ { enum cb_err status;
- setbits16(base + TSN_MAC_MDIO_DATA, data); + write16(base + TSN_MAC_MDIO_DATA, data); clrsetbits32(base + TSN_MAC_MDIO_ADR, TSN_MAC_MDIO_ADR_MASK, TSN_MAC_PHYAD(phy_adr) | TSN_MAC_REGAD(reg_adr) | TSN_MAC_CLK_TRAIL_4 | TSN_MAC_CSR_CLK_DIV_62