1a3e51d47SHeiner Kallweit /* SPDX-License-Identifier: GPL-2.0-or-later */ 2a3e51d47SHeiner Kallweit /* 3a3e51d47SHeiner Kallweit * phylib-internal header 4a3e51d47SHeiner Kallweit */ 5a3e51d47SHeiner Kallweit 6a3e51d47SHeiner Kallweit #ifndef __PHYLIB_INTERNAL_H 7a3e51d47SHeiner Kallweit #define __PHYLIB_INTERNAL_H 8a3e51d47SHeiner Kallweit 9a3e51d47SHeiner Kallweit struct phy_device; 10a3e51d47SHeiner Kallweit 11a3e51d47SHeiner Kallweit /* 12a3e51d47SHeiner Kallweit * phy_supported_speeds - return all speeds currently supported by a PHY device 13a3e51d47SHeiner Kallweit */ 14a3e51d47SHeiner Kallweit unsigned int phy_supported_speeds(struct phy_device *phy, 15a3e51d47SHeiner Kallweit unsigned int *speeds, 16a3e51d47SHeiner Kallweit unsigned int size); 17a3e51d47SHeiner Kallweit void of_set_phy_supported(struct phy_device *phydev); 18a3e51d47SHeiner Kallweit void of_set_phy_eee_broken(struct phy_device *phydev); 19a3e51d47SHeiner Kallweit void of_set_phy_timing_role(struct phy_device *phydev); 20a3e51d47SHeiner Kallweit int phy_speed_down_core(struct phy_device *phydev); 21a3e51d47SHeiner Kallweit void phy_check_downshift(struct phy_device *phydev); 22a3e51d47SHeiner Kallweit 23*e7f984e9SHeiner Kallweit int phy_package_address(struct phy_device *phydev, unsigned int addr_offset); 24*e7f984e9SHeiner Kallweit 25a3e51d47SHeiner Kallweit int genphy_c45_read_eee_adv(struct phy_device *phydev, unsigned long *adv); 26a3e51d47SHeiner Kallweit 27a3e51d47SHeiner Kallweit #endif /* __PHYLIB_INTERNAL_H */ 28