diff options
author | Marek BehĂșn <kabel@kernel.org> | 2021-07-11 19:38:15 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2021-07-11 20:02:33 +0300 |
commit | a5de4be0aaaa66a2fa98e8a33bdbed3bd0682804 (patch) | |
tree | 0b772747329017f09b8698d3277063208cd763d3 /include/linux/marvell_phy.h | |
parent | 84f7e0bb4809f4497124b6b6904c07c8a0c73c58 (diff) | |
download | linux-a5de4be0aaaa66a2fa98e8a33bdbed3bd0682804.tar.xz |
net: phy: marvell10g: fix differentiation of 88X3310 from 88X3340
It seems that we cannot differentiate 88X3310 from 88X3340 by simply
looking at bit 3 of revision ID. This only works on revisions A0 and A1.
On revision B0, this bit is always 1.
Instead use the 3.d00d register for differentiation, since this register
contains information about number of ports on the device.
Fixes: 9885d016ffa9 ("net: phy: marvell10g: add separate structure for 88X3340")
Signed-off-by: Marek BehĂșn <kabel@kernel.org>
Reported-by: Matteo Croce <mcroce@linux.microsoft.com>
Tested-by: Matteo Croce <mcroce@microsoft.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/marvell_phy.h')
-rw-r--r-- | include/linux/marvell_phy.h | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/include/linux/marvell_phy.h b/include/linux/marvell_phy.h index acee44b9db26..0f06c2287b52 100644 --- a/include/linux/marvell_phy.h +++ b/include/linux/marvell_phy.h @@ -22,14 +22,10 @@ #define MARVELL_PHY_ID_88E1545 0x01410ea0 #define MARVELL_PHY_ID_88E1548P 0x01410ec0 #define MARVELL_PHY_ID_88E3016 0x01410e60 +#define MARVELL_PHY_ID_88X3310 0x002b09a0 #define MARVELL_PHY_ID_88E2110 0x002b09b0 #define MARVELL_PHY_ID_88X2222 0x01410f10 -/* PHY IDs and mask for Alaska 10G PHYs */ -#define MARVELL_PHY_ID_88X33X0_MASK 0xfffffff8 -#define MARVELL_PHY_ID_88X3310 0x002b09a0 -#define MARVELL_PHY_ID_88X3340 0x002b09a8 - /* Marvel 88E1111 in Finisar SFP module with modified PHY ID */ #define MARVELL_PHY_ID_88E1111_FINISAR 0x01ff0cc0 |