phy-c45.c (3c1bcc8614db10803f1f57ef0295363917448cb2) | phy-c45.c (c0ec3c2736774c69bf5c641aea7712132c0f0eba) |
---|---|
1/* 2 * Clause 45 PHY support 3 */ 4#include <linux/ethtool.h> 5#include <linux/export.h> 6#include <linux/mdio.h> 7#include <linux/mii.h> 8#include <linux/phy.h> --- 167 unchanged lines hidden (view full) --- 176{ 177 int val; 178 179 /* Read the link partner's base page advertisement */ 180 val = phy_read_mmd(phydev, MDIO_MMD_AN, MDIO_AN_LPA); 181 if (val < 0) 182 return val; 183 | 1/* 2 * Clause 45 PHY support 3 */ 4#include <linux/ethtool.h> 5#include <linux/export.h> 6#include <linux/mdio.h> 7#include <linux/mii.h> 8#include <linux/phy.h> --- 167 unchanged lines hidden (view full) --- 176{ 177 int val; 178 179 /* Read the link partner's base page advertisement */ 180 val = phy_read_mmd(phydev, MDIO_MMD_AN, MDIO_AN_LPA); 181 if (val < 0) 182 return val; 183 |
184 phydev->lp_advertising = mii_lpa_to_ethtool_lpa_t(val); | 184 mii_lpa_to_linkmode_lpa_t(phydev->lp_advertising, val); |
185 phydev->pause = val & LPA_PAUSE_CAP ? 1 : 0; 186 phydev->asym_pause = val & LPA_PAUSE_ASYM ? 1 : 0; 187 188 /* Read the link partner's 10G advertisement */ 189 val = phy_read_mmd(phydev, MDIO_MMD_AN, MDIO_AN_10GBT_STAT); 190 if (val < 0) 191 return val; 192 193 if (val & MDIO_AN_10GBT_STAT_LP10G) | 185 phydev->pause = val & LPA_PAUSE_CAP ? 1 : 0; 186 phydev->asym_pause = val & LPA_PAUSE_ASYM ? 1 : 0; 187 188 /* Read the link partner's 10G advertisement */ 189 val = phy_read_mmd(phydev, MDIO_MMD_AN, MDIO_AN_10GBT_STAT); 190 if (val < 0) 191 return val; 192 193 if (val & MDIO_AN_10GBT_STAT_LP10G) |
194 phydev->lp_advertising |= ADVERTISED_10000baseT_Full; | 194 linkmode_set_bit(ETHTOOL_LINK_MODE_10000baseT_Full_BIT, 195 phydev->lp_advertising); |
195 196 return 0; 197} 198EXPORT_SYMBOL_GPL(genphy_c45_read_lpa); 199 200/** 201 * genphy_c45_read_pma - read link speed etc from PMA 202 * @phydev: target phy_device struct --- 138 unchanged lines hidden --- | 196 197 return 0; 198} 199EXPORT_SYMBOL_GPL(genphy_c45_read_lpa); 200 201/** 202 * genphy_c45_read_pma - read link speed etc from PMA 203 * @phydev: target phy_device struct --- 138 unchanged lines hidden --- |