64 lines
2.0 KiB
Diff
64 lines
2.0 KiB
Diff
From: Ian Campbell <ijc@hellion.org.uk>
|
|
Subject: phy/marvell: disable 4-port phys
|
|
Date: Wed, 20 Nov 2013 08:30:14 +0000
|
|
Forwarded: no
|
|
|
|
See 723177 for more details. Briefly:
|
|
|
|
The Marvell PHY was originally disabled because it can cause networking
|
|
failures on some systems. According to Lennert Buytenhek this is because some
|
|
of the variants added did not share the same register layout. Since the known
|
|
cases are all 4-ports disable those variants (indicated by a 4 in the
|
|
penultimate position of the model name) until they can be audited for
|
|
correctness.
|
|
|
|
--- a/drivers/net/phy/marvell.c
|
|
+++ b/drivers/net/phy/marvell.c
|
|
@@ -963,6 +963,7 @@
|
|
.set_wol = &m88e1318_set_wol,
|
|
.driver = { .owner = THIS_MODULE },
|
|
},
|
|
+#if 0
|
|
{
|
|
.phy_id = MARVELL_PHY_ID_88E1145,
|
|
.phy_id_mask = MARVELL_PHY_ID_MASK,
|
|
@@ -976,6 +977,8 @@
|
|
.config_intr = &marvell_config_intr,
|
|
.driver = { .owner = THIS_MODULE },
|
|
},
|
|
+#endif
|
|
+#if 0
|
|
{
|
|
.phy_id = MARVELL_PHY_ID_88E1149R,
|
|
.phy_id_mask = MARVELL_PHY_ID_MASK,
|
|
@@ -989,6 +992,8 @@
|
|
.config_intr = &marvell_config_intr,
|
|
.driver = { .owner = THIS_MODULE },
|
|
},
|
|
+#endif
|
|
+#if 0
|
|
{
|
|
.phy_id = MARVELL_PHY_ID_88E1240,
|
|
.phy_id_mask = MARVELL_PHY_ID_MASK,
|
|
@@ -1002,6 +1007,7 @@
|
|
.config_intr = &marvell_config_intr,
|
|
.driver = { .owner = THIS_MODULE },
|
|
},
|
|
+#endif
|
|
{
|
|
.phy_id = MARVELL_PHY_ID_88E1116R,
|
|
.phy_id_mask = MARVELL_PHY_ID_MASK,
|
|
@@ -1051,9 +1057,9 @@
|
|
{ MARVELL_PHY_ID_88E1111, MARVELL_PHY_ID_MASK },
|
|
{ MARVELL_PHY_ID_88E1118, MARVELL_PHY_ID_MASK },
|
|
{ MARVELL_PHY_ID_88E1121R, MARVELL_PHY_ID_MASK },
|
|
- { MARVELL_PHY_ID_88E1145, MARVELL_PHY_ID_MASK },
|
|
- { MARVELL_PHY_ID_88E1149R, MARVELL_PHY_ID_MASK },
|
|
- { MARVELL_PHY_ID_88E1240, MARVELL_PHY_ID_MASK },
|
|
+/* { MARVELL_PHY_ID_88E1145, MARVELL_PHY_ID_MASK }, */
|
|
+/* { MARVELL_PHY_ID_88E1149R, MARVELL_PHY_ID_MASK }, */
|
|
+/* { MARVELL_PHY_ID_88E1240, MARVELL_PHY_ID_MASK }, */
|
|
{ MARVELL_PHY_ID_88E1318S, MARVELL_PHY_ID_MASK },
|
|
{ MARVELL_PHY_ID_88E1116R, MARVELL_PHY_ID_MASK },
|
|
{ MARVELL_PHY_ID_88E1510, MARVELL_PHY_ID_MASK },
|