Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

net: phy: realtek: read actual speed on rtl8211f to detect downshift

The rtl8211f supports downshift and before commit 5502b218e001
("net: phy: use phy_resolve_aneg_linkmode in genphy_read_status")
the read-back of register MII_CTRL1000 was used to detect the
negotiated link speed.
The code added in commit d445dff2df60 ("net: phy: realtek: read
actual speed to detect downshift") is working fine also for this
phy and it's trivial re-using it to restore the downshift
detection on rtl8211f.

Add the phy specific read_status() pointing to the existing
function rtlgen_read_status().

Signed-off-by: Antonio Borneo <antonio.borneo@st.com>
Link: https://lore.kernel.org/r/478f871a-583d-01f1-9cc5-2eea56d8c2a7@huawei.com
Tested-by: Yonglong Liu <liuyonglong@huawei.com>
Link: https://lore.kernel.org/r/20201124230756.887925-1-antonio.borneo@st.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>

authored by

Antonio Borneo and committed by
Jakub Kicinski
4826d2c4 16d07c38

+1
+1
drivers/net/phy/realtek.c
··· 729 729 PHY_ID_MATCH_EXACT(0x001cc916), 730 730 .name = "RTL8211F Gigabit Ethernet", 731 731 .config_init = &rtl8211f_config_init, 732 + .read_status = rtlgen_read_status, 732 733 .config_intr = &rtl8211f_config_intr, 733 734 .handle_interrupt = rtl8211f_handle_interrupt, 734 735 .suspend = genphy_suspend,