17c32f470SVitaly Bordug #ifndef __PHY_FIXED_H 27c32f470SVitaly Bordug #define __PHY_FIXED_H 37c32f470SVitaly Bordug 47c32f470SVitaly Bordug struct fixed_phy_status { 5a79d8e93SVitaly Bordug int link; 6a79d8e93SVitaly Bordug int speed; 7a79d8e93SVitaly Bordug int duplex; 8a79d8e93SVitaly Bordug int pause; 9a79d8e93SVitaly Bordug int asym_pause; 107c32f470SVitaly Bordug }; 117c32f470SVitaly Bordug 12a7595121SThomas Petazzoni struct device_node; 13a7595121SThomas Petazzoni 14a79d8e93SVitaly Bordug #ifdef CONFIG_FIXED_PHY 15a79d8e93SVitaly Bordug extern int fixed_phy_add(unsigned int irq, int phy_id, 16a79d8e93SVitaly Bordug struct fixed_phy_status *status); 17*fd2ef0baSPetri Gynther extern struct phy_device *fixed_phy_register(unsigned int irq, 18a7595121SThomas Petazzoni struct fixed_phy_status *status, 19a7595121SThomas Petazzoni struct device_node *np); 2046cfd6eaSKonrad Zapalowicz extern void fixed_phy_del(int phy_addr); 21464c3668SFlorian Fainelli extern int fixed_phy_set_link_update(struct phy_device *phydev, 22464c3668SFlorian Fainelli int (*link_update)(struct net_device *, 23464c3668SFlorian Fainelli struct fixed_phy_status *)); 24a79d8e93SVitaly Bordug #else 25a79d8e93SVitaly Bordug static inline int fixed_phy_add(unsigned int irq, int phy_id, 26a79d8e93SVitaly Bordug struct fixed_phy_status *status) 27a79d8e93SVitaly Bordug { 28a79d8e93SVitaly Bordug return -ENODEV; 29a79d8e93SVitaly Bordug } 30*fd2ef0baSPetri Gynther static inline struct phy_device *fixed_phy_register(unsigned int irq, 31a7595121SThomas Petazzoni struct fixed_phy_status *status, 32a7595121SThomas Petazzoni struct device_node *np) 33a7595121SThomas Petazzoni { 34*fd2ef0baSPetri Gynther return ERR_PTR(-ENODEV); 35a7595121SThomas Petazzoni } 3646cfd6eaSKonrad Zapalowicz static inline int fixed_phy_del(int phy_addr) 3746cfd6eaSKonrad Zapalowicz { 3846cfd6eaSKonrad Zapalowicz return -ENODEV; 3946cfd6eaSKonrad Zapalowicz } 40464c3668SFlorian Fainelli static inline int fixed_phy_set_link_update(struct phy_device *phydev, 41a79d8e93SVitaly Bordug int (*link_update)(struct net_device *, 42464c3668SFlorian Fainelli struct fixed_phy_status *)) 43464c3668SFlorian Fainelli { 44464c3668SFlorian Fainelli return -ENODEV; 45464c3668SFlorian Fainelli } 46464c3668SFlorian Fainelli #endif /* CONFIG_FIXED_PHY */ 477c32f470SVitaly Bordug 487c32f470SVitaly Bordug #endif /* __PHY_FIXED_H */ 49