Commit 2170fef7 authored by Charles-Antoine Couret's avatar Charles-Antoine Couret Committed by David S. Miller

Marvell phy: add field to get errors from fiber link.

Add support for the fiber receiver error counter in the
statistics. Rename the current counter which is for copper errors to
phy_receive_errors_copper, so it is easy to distinguish copper from
fiber.
Reviewed-by: default avatarAndrew Lunn <andrew@lunn.ch>
Signed-off-by: default avatarCharles-Antoine Couret <charles-antoine.couret@nexvision.fr>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 6cfb3bcc
...@@ -151,6 +151,7 @@ ...@@ -151,6 +151,7 @@
#define ADVERTISE_PAUSE_ASYM_FIBER 0x100 #define ADVERTISE_PAUSE_ASYM_FIBER 0x100
#define REGISTER_LINK_STATUS 0x400 #define REGISTER_LINK_STATUS 0x400
#define NB_FIBER_STATS 1
MODULE_DESCRIPTION("Marvell PHY driver"); MODULE_DESCRIPTION("Marvell PHY driver");
MODULE_AUTHOR("Andy Fleming"); MODULE_AUTHOR("Andy Fleming");
...@@ -164,8 +165,9 @@ struct marvell_hw_stat { ...@@ -164,8 +165,9 @@ struct marvell_hw_stat {
}; };
static struct marvell_hw_stat marvell_hw_stats[] = { static struct marvell_hw_stat marvell_hw_stats[] = {
{ "phy_receive_errors", 0, 21, 16}, { "phy_receive_errors_copper", 0, 21, 16},
{ "phy_idle_errors", 0, 10, 8 }, { "phy_idle_errors", 0, 10, 8 },
{ "phy_receive_errors_fiber", 1, 21, 16},
}; };
struct marvell_priv { struct marvell_priv {
...@@ -1236,7 +1238,10 @@ static int m88e1318_set_wol(struct phy_device *phydev, struct ethtool_wolinfo *w ...@@ -1236,7 +1238,10 @@ static int m88e1318_set_wol(struct phy_device *phydev, struct ethtool_wolinfo *w
static int marvell_get_sset_count(struct phy_device *phydev) static int marvell_get_sset_count(struct phy_device *phydev)
{ {
return ARRAY_SIZE(marvell_hw_stats); if (phydev->supported & SUPPORTED_FIBRE)
return ARRAY_SIZE(marvell_hw_stats);
else
return ARRAY_SIZE(marvell_hw_stats) - NB_FIBER_STATS;
} }
static void marvell_get_strings(struct phy_device *phydev, u8 *data) static void marvell_get_strings(struct phy_device *phydev, u8 *data)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment