Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3d055d8d authored by Florian Fainelli's avatar Florian Fainelli Committed by David S. Miller
Browse files

net: phy: expose PHY device interface mode



Expose the PHY device interface mode through sysfs since this is an
useful piece of information for knowing how the attached networking
device will have configured its transmit/receive path.

Signed-off-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 8a2fe56e
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -7,3 +7,13 @@ Description:
		by the device during bus enumeration, encoded in hexadecimal.
		This ID is used to match the device with the appropriate
		driver.

What:		/sys/bus/mdio_bus/devices/.../phy_interface
Date:		February 2014
KernelVersion:	3.15
Contact:	netdev@vger.kernel.org
Description:
		This attribute contains the PHY interface as configured by the
		Ethernet driver during bus enumeration, encoded in string.
		This interface mode is used to configure the Ethernet MAC with the
		appropriate mode for its data lines to the PHY hardware.
+10 −0
Original line number Diff line number Diff line
@@ -432,8 +432,18 @@ phy_id_show(struct device *dev, struct device_attribute *attr, char *buf)
}
static DEVICE_ATTR_RO(phy_id);

static ssize_t
phy_interface_show(struct device *dev, struct device_attribute *attr, char *buf)
{
	struct phy_device *phydev = to_phy_device(dev);

	return sprintf(buf, "%s\n", phy_modes(phydev->interface));
}
static DEVICE_ATTR_RO(phy_interface);

static struct attribute *mdio_dev_attrs[] = {
	&dev_attr_phy_id.attr,
	&dev_attr_phy_interface.attr,
	NULL,
};
ATTRIBUTE_GROUPS(mdio_dev);