ethtool, mdio, mii: Specify MDIO information fields in struct ethtool_cmd Add comments for ethtool_cmd::phy_address and ethtool_cmd::mdio_support, and definitions of the flags currently used in mdio_support. In the mdio library, assert that its own flags continue to match those in the ethtool interface. In the mii library, use the ethtool flag definition and stop including <linux/mdio.h>. Signed-off-by: Ben Hutchings <bhutchings@solarflare.com> Signed-off-by: David S. Miller <davem@davemloft.net>
diff --git a/drivers/net/mdio.c b/drivers/net/mdio.c index 16fbb11..8403316 100644 --- a/drivers/net/mdio.c +++ b/drivers/net/mdio.c
@@ -190,6 +190,9 @@ int reg; u32 speed; + BUILD_BUG_ON(MDIO_SUPPORTS_C22 != ETH_MDIO_SUPPORTS_C22); + BUILD_BUG_ON(MDIO_SUPPORTS_C45 != ETH_MDIO_SUPPORTS_C45); + ecmd->transceiver = XCVR_INTERNAL; ecmd->phy_address = mdio->prtad; ecmd->mdio_support =
diff --git a/drivers/net/mii.c b/drivers/net/mii.c index c70c233..4a99c39 100644 --- a/drivers/net/mii.c +++ b/drivers/net/mii.c
@@ -31,7 +31,7 @@ #include <linux/module.h> #include <linux/netdevice.h> #include <linux/ethtool.h> -#include <linux/mdio.h> +#include <linux/mii.h> static u32 mii_get_an(struct mii_if_info *mii, u16 addr) { @@ -74,7 +74,7 @@ /* this isn't fully supported at higher layers */ ecmd->phy_address = mii->phy_id; - ecmd->mdio_support = MDIO_SUPPORTS_C22; + ecmd->mdio_support = ETH_MDIO_SUPPORTS_C22; ecmd->advertising = ADVERTISED_TP | ADVERTISED_MII;