1 /* SPDX-License-Identifier: GPL-2.0 */ << 2 #ifndef __PHY_FIXED_H 1 #ifndef __PHY_FIXED_H 3 #define __PHY_FIXED_H 2 #define __PHY_FIXED_H 4 3 5 #include <linux/types.h> << 6 << 7 struct fixed_phy_status { 4 struct fixed_phy_status { 8 int link; 5 int link; 9 int speed; 6 int speed; 10 int duplex; 7 int duplex; 11 int pause; 8 int pause; 12 int asym_pause; 9 int asym_pause; 13 }; 10 }; 14 11 15 struct device_node; !! 12 #ifdef CONFIG_FIXED_PHY 16 struct gpio_desc; << 17 struct net_device; << 18 << 19 #if IS_ENABLED(CONFIG_FIXED_PHY) << 20 extern int fixed_phy_change_carrier(struct net << 21 extern int fixed_phy_add(unsigned int irq, int 13 extern int fixed_phy_add(unsigned int irq, int phy_id, 22 struct fixed_phy_stat 14 struct fixed_phy_status *status); 23 extern struct phy_device *fixed_phy_register(u << 24 s << 25 s << 26 << 27 extern struct phy_device * << 28 fixed_phy_register_with_gpiod(unsigned int irq << 29 struct fixed_phy << 30 struct gpio_desc << 31 << 32 extern void fixed_phy_unregister(struct phy_de << 33 extern int fixed_phy_set_link_update(struct ph << 34 int (*link_update)(str << 35 str << 36 #else 15 #else 37 static inline int fixed_phy_add(unsigned int i 16 static inline int fixed_phy_add(unsigned int irq, int phy_id, 38 struct fixed_p 17 struct fixed_phy_status *status) 39 { 18 { 40 return -ENODEV; 19 return -ENODEV; 41 } 20 } 42 static inline struct phy_device *fixed_phy_reg !! 21 #endif /* CONFIG_FIXED_PHY */ 43 << 44 << 45 { << 46 return ERR_PTR(-ENODEV); << 47 } << 48 << 49 static inline struct phy_device * << 50 fixed_phy_register_with_gpiod(unsigned int irq << 51 struct fixed_phy << 52 struct gpio_desc << 53 { << 54 return ERR_PTR(-ENODEV); << 55 } << 56 22 57 static inline void fixed_phy_unregister(struct !! 23 /* 58 { !! 24 * This function issued only by fixed_phy-aware drivers, no need 59 } !! 25 * protect it with #ifdef 60 static inline int fixed_phy_set_link_update(st !! 26 */ >> 27 extern int fixed_phy_set_link_update(struct phy_device *phydev, 61 int (*link_update)(str 28 int (*link_update)(struct net_device *, 62 str !! 29 struct fixed_phy_status *)); 63 { << 64 return -ENODEV; << 65 } << 66 static inline int fixed_phy_change_carrier(str << 67 { << 68 return -EINVAL; << 69 } << 70 #endif /* CONFIG_FIXED_PHY */ << 71 30 72 #endif /* __PHY_FIXED_H */ 31 #endif /* __PHY_FIXED_H */ 73 32
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.