Many network drivers directly modify phy_device::advertising and phy_device::supported. Provide accessors to these fields to better isolate phylib from its users.
Suggested-by: Ben Hutchings <b...@decadent.org.uk> Signed-off-by: Max Filippov <jcmvb...@gmail.com> --- Changes v1->v2: - new patch include/linux/phy.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/include/linux/phy.h b/include/linux/phy.h index 48a4dc3..2ae58f8 100644 --- a/include/linux/phy.h +++ b/include/linux/phy.h @@ -559,6 +559,18 @@ static inline int phy_read_status(struct phy_device *phydev) { return phydev->drv->read_status(phydev); } +static inline void phy_update_advert(struct phy_device *phydev, u32 clear, + u32 set) +{ + phydev->advertising = (phydev->advertising & ~clear) | set; +} + +static inline void phy_update_supported(struct phy_device *phydev, u32 clear, + u32 set) +{ + phydev->supported = (phydev->supported & ~clear) | set; +} + int genphy_setup_forced(struct phy_device *phydev); int genphy_restart_aneg(struct phy_device *phydev); int genphy_config_aneg(struct phy_device *phydev); -- 1.8.1.4 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/