aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Roese <sr@denx.de>2022-03-31 11:43:07 +0200
committerTom Rini <trini@konsulko.com>2022-08-08 10:50:20 -0400
commit01207947d54e4d8a356a19658640213be4939f62 (patch)
tree097ccc0d72b776325ba9c1cb5ce4dcd0ddd3034b
parent0ef02619ef01ad7e33805e9f9213cd289e2da0fc (diff)
downloadu-boot-01207947d54e4d8a356a19658640213be4939f62.zip
u-boot-01207947d54e4d8a356a19658640213be4939f62.tar.gz
u-boot-01207947d54e4d8a356a19658640213be4939f62.tar.bz2
net: phy: marvell: Add support for 88E1240 PHY
This patch adds basic support for the Marvell 88E1240 PHY. This will be used by the upcoming ethernet support addition for the Marvell MIPS Octeon EBB7304 platform. Signed-off-by: Stefan Roese <sr@denx.de> Cc: Ramon Fried <rfried.dev@gmail.com> Cc: Joe Hershberger <joe.hershberger@ni.com> Cc: Aaron Williams <awilliams@marvell.com> Cc: Chandrakala Chavva <cchavva@marvell.com> Reviewed-by: Marek BehĂșn <marek.behun@nic.cz>
-rw-r--r--drivers/net/phy/marvell.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/drivers/net/phy/marvell.c b/drivers/net/phy/marvell.c
index 1dcb79d..212a861 100644
--- a/drivers/net/phy/marvell.c
+++ b/drivers/net/phy/marvell.c
@@ -614,6 +614,16 @@ static int m88e1149_config(struct phy_device *phydev)
return 0;
}
+/* Marvell 88E1240 */
+static int m88e1240_config(struct phy_device *phydev)
+{
+ marvell_of_reg_init(phydev);
+
+ genphy_config_aneg(phydev);
+
+ return 0;
+}
+
/* Marvell 88E1310 */
static int m88e1310_config(struct phy_device *phydev)
{
@@ -760,6 +770,16 @@ static struct phy_driver M88E1149S_driver = {
.shutdown = &genphy_shutdown,
};
+static struct phy_driver M88E1240_driver = {
+ .name = "Marvell 88E1240",
+ .uid = 0x1410e30,
+ .mask = 0xffffff0,
+ .features = PHY_GBIT_FEATURES,
+ .config = &m88e1240_config,
+ .startup = &m88e1011s_startup,
+ .shutdown = &genphy_shutdown,
+};
+
static struct phy_driver M88E151x_driver = {
.name = "Marvell 88E151x",
.uid = 0x1410dd0,
@@ -802,6 +822,7 @@ int phy_marvell_init(void)
phy_register(&M88E1118R_driver);
phy_register(&M88E1111S_driver);
phy_register(&M88E1011S_driver);
+ phy_register(&M88E1240_driver);
phy_register(&M88E151x_driver);
phy_register(&M88E1680_driver);