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