[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <4c8d1aa315b3abc569f4134d4301488ea510b2e8.1369980470.git.michal.simek@xilinx.com>
Date: Fri, 31 May 2013 08:08:27 +0200
From: Michal Simek <michal.simek@...inx.com>
To: linux-kernel@...r.kernel.org
Cc: Michal Simek <monstr@...str.eu>,
Michal Simek <michal.simek@...inx.com>,
"David S. Miller" <davem@...emloft.net>,
Lars-Peter Clausen <lars@...afoo.de>,
Christian Hohnstaedt <chohnstaedt@...ominate.com>,
Rick Hoover <RHoover@...ilentinc.com>,
Anirudha Sarangi <anirudh@...inx.com>,
Steven Wang <steven.wang@...ilentinc.com>,
netdev@...r.kernel.org
Subject: [PATCH v2 5/5] phy: Add Marvell 88E1510 phy ID
Add support for this new phy ID.
Signed-off-by: Rick Hoover <RHoover@...ilentinc.com>
Signed-off-by: Steven Wang <steven.wang@...ilentinc.com>
Signed-off-by: Lars-Peter Clausen <lars@...afoo.de>
Signed-off-by: Michal Simek <michal.simek@...inx.com>
---
Changes in v2:
- None
drivers/net/phy/marvell.c | 25 +++++++++++++++++++++++++
include/linux/marvell_phy.h | 1 +
2 files changed, 26 insertions(+)
diff --git a/drivers/net/phy/marvell.c b/drivers/net/phy/marvell.c
index df5a9f6..2e91477 100644
--- a/drivers/net/phy/marvell.c
+++ b/drivers/net/phy/marvell.c
@@ -374,6 +374,17 @@ static int m88e1318_config_aneg(struct phy_device *phydev)
return m88e1121_config_aneg(phydev);
}
+static int m88e1510_config_aneg(struct phy_device *phydev)
+{
+ int err;
+
+ err = m88e1318_config_aneg(phydev);
+ if (err < 0)
+ return err;
+
+ return marvell_of_reg_init(phydev);
+}
+
static int m88e1116r_config_init(struct phy_device *phydev)
{
int temp;
@@ -1004,6 +1015,19 @@ static struct phy_driver marvell_drivers[] = {
.config_intr = &marvell_config_intr,
.driver = { .owner = THIS_MODULE },
},
+ {
+ .phy_id = MARVELL_PHY_ID_88E1510,
+ .phy_id_mask = MARVELL_PHY_ID_MASK,
+ .name = "Marvell 88E1510",
+ .features = PHY_GBIT_FEATURES,
+ .flags = PHY_HAS_INTERRUPT,
+ .config_aneg = &m88e1510_config_aneg,
+ .read_status = &marvell_read_status,
+ .ack_interrupt = &marvell_ack_interrupt,
+ .config_intr = &marvell_config_intr,
+ .did_interrupt = &m88e1121_did_interrupt,
+ .driver = { .owner = THIS_MODULE },
+ },
};
static int __init marvell_init(void)
@@ -1032,6 +1056,7 @@ static struct mdio_device_id __maybe_unused marvell_tbl[] = {
{ 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 },
{ }
};
diff --git a/include/linux/marvell_phy.h b/include/linux/marvell_phy.h
index ec41025..8e9a029 100644
--- a/include/linux/marvell_phy.h
+++ b/include/linux/marvell_phy.h
@@ -15,6 +15,7 @@
#define MARVELL_PHY_ID_88E1240 0x01410e30
#define MARVELL_PHY_ID_88E1318S 0x01410e90
#define MARVELL_PHY_ID_88E1116R 0x01410e40
+#define MARVELL_PHY_ID_88E1510 0x01410dd0
/* struct phy_device dev_flags definitions */
#define MARVELL_PHY_M1145_FLAGS_RESISTANCE 0x00000001
--
1.8.2.3
Content of type "application/pgp-signature" skipped
Powered by blists - more mailing lists