--- zzzz-none-000/linux-3.10.107/include/linux/phy_fixed.h 2017-06-27 09:49:32.000000000 +0000 +++ scorpion-7490-727/linux-3.10.107/include/linux/phy_fixed.h 2021-02-04 17:41:59.000000000 +0000 @@ -9,23 +9,53 @@ int asym_pause; }; -#ifdef CONFIG_FIXED_PHY +struct device_node; + +#if IS_ENABLED(CONFIG_FIXED_PHY) extern int fixed_phy_add(unsigned int irq, int phy_id, - struct fixed_phy_status *status); + struct fixed_phy_status *status, + int link_gpio); +extern struct phy_device *fixed_phy_register(unsigned int irq, + struct fixed_phy_status *status, + int link_gpio, + struct device_node *np); +extern void fixed_phy_del(int phy_addr); +extern int fixed_phy_set_link_update(struct phy_device *phydev, + int (*link_update)(struct net_device *, + struct fixed_phy_status *)); +extern int fixed_phy_update_state(struct phy_device *phydev, + const struct fixed_phy_status *status, + const struct fixed_phy_status *changed); #else static inline int fixed_phy_add(unsigned int irq, int phy_id, - struct fixed_phy_status *status) + struct fixed_phy_status *status, + int link_gpio) { return -ENODEV; } -#endif /* CONFIG_FIXED_PHY */ - -/* - * This function issued only by fixed_phy-aware drivers, no need - * protect it with #ifdef - */ -extern int fixed_phy_set_link_update(struct phy_device *phydev, +static inline struct phy_device *fixed_phy_register(unsigned int irq, + struct fixed_phy_status *status, + int gpio_link, + struct device_node *np) +{ + return ERR_PTR(-ENODEV); +} +static inline int fixed_phy_del(int phy_addr) +{ + return -ENODEV; +} +static inline int fixed_phy_set_link_update(struct phy_device *phydev, int (*link_update)(struct net_device *, - struct fixed_phy_status *)); + struct fixed_phy_status *)) +{ + return -ENODEV; +} +static inline int fixed_phy_update_state(struct phy_device *phydev, + const struct fixed_phy_status *status, + const struct fixed_phy_status *changed) +{ + return -ENODEV; +} +#endif /* CONFIG_FIXED_PHY */ #endif /* __PHY_FIXED_H */