1#ifndef __PHY_FIXED_H 2#define __PHY_FIXED_H 3 4struct fixed_phy_status { 5 int link; 6 int speed; 7 int duplex; 8 int pause; 9 int asym_pause; 10}; 11 12struct device_node; 13 14#if IS_ENABLED(CONFIG_FIXED_PHY) 15extern int fixed_phy_add(unsigned int irq, int phy_id, 16 struct fixed_phy_status *status); 17extern struct phy_device *fixed_phy_register(unsigned int irq, 18 struct fixed_phy_status *status, 19 struct device_node *np); 20extern void fixed_phy_del(int phy_addr); 21extern int fixed_phy_set_link_update(struct phy_device *phydev, 22 int (*link_update)(struct net_device *, 23 struct fixed_phy_status *)); 24extern int fixed_phy_update_state(struct phy_device *phydev, 25 const struct fixed_phy_status *status, 26 const struct fixed_phy_status *changed); 27#else 28static inline int fixed_phy_add(unsigned int irq, int phy_id, 29 struct fixed_phy_status *status) 30{ 31 return -ENODEV; 32} 33static inline struct phy_device *fixed_phy_register(unsigned int irq, 34 struct fixed_phy_status *status, 35 struct device_node *np) 36{ 37 return ERR_PTR(-ENODEV); 38} 39static inline int fixed_phy_del(int phy_addr) 40{ 41 return -ENODEV; 42} 43static inline int fixed_phy_set_link_update(struct phy_device *phydev, 44 int (*link_update)(struct net_device *, 45 struct fixed_phy_status *)) 46{ 47 return -ENODEV; 48} 49static inline int fixed_phy_update_state(struct phy_device *phydev, 50 const struct fixed_phy_status *status, 51 const struct fixed_phy_status *changed) 52{ 53 return -ENODEV; 54} 55#endif /* CONFIG_FIXED_PHY */ 56 57#endif /* __PHY_FIXED_H */ 58