mirror of
https://github.com/torvalds/linux.git
synced 2026-06-01 19:13:47 +02:00
net: stmmac: dwmac4: fix PCS duplex mode decode
dwmac4 was decoding the duplex mode from the GMAC_PHYIF_CONTROL_STATUS
register incorrectly, using GMAC_PHYIF_CTRLSTATUS_LNKMOD_MASK (value 1)
rather than GMAC_PHYIF_CTRLSTATUS_LNKMOD (bit 16). Fix this.
Fixes: 70523e639b ("drivers: net: stmmac: reworking the PCS code.")
Reviewed-by: Andrew Halaney <ahalaney@redhat.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Reviewed-by: Serge Semin <fancer.lancer@gmail.com>
Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
Link: https://patch.msgid.link/E1sbJvd-001rGD-E3@rmk-PC.armlinux.org.uk
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
b928e7d19d
commit
85ba108a52
|
|
@ -573,8 +573,6 @@ static inline u32 mtl_low_credx_base_addr(const struct dwmac4_addrs *addrs,
|
|||
#define GMAC_PHYIF_CTRLSTATUS_LNKSTS BIT(19)
|
||||
#define GMAC_PHYIF_CTRLSTATUS_JABTO BIT(20)
|
||||
#define GMAC_PHYIF_CTRLSTATUS_FALSECARDET BIT(21)
|
||||
/* LNKMOD */
|
||||
#define GMAC_PHYIF_CTRLSTATUS_LNKMOD_MASK 0x1
|
||||
/* LNKSPEED */
|
||||
#define GMAC_PHYIF_CTRLSTATUS_SPEED_125 0x2
|
||||
#define GMAC_PHYIF_CTRLSTATUS_SPEED_25 0x1
|
||||
|
|
|
|||
|
|
@ -786,7 +786,7 @@ static void dwmac4_phystatus(void __iomem *ioaddr, struct stmmac_extra_stats *x)
|
|||
else
|
||||
x->pcs_speed = SPEED_10;
|
||||
|
||||
x->pcs_duplex = (status & GMAC_PHYIF_CTRLSTATUS_LNKMOD_MASK);
|
||||
x->pcs_duplex = (status & GMAC_PHYIF_CTRLSTATUS_LNKMOD);
|
||||
|
||||
pr_info("Link is Up - %d/%s\n", (int)x->pcs_speed,
|
||||
x->pcs_duplex ? "Full" : "Half");
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user