Commit | Line | Data |
---|---|---|
7c32f470 VB |
1 | #ifndef __PHY_FIXED_H |
2 | #define __PHY_FIXED_H | |
3 | ||
7c32f470 | 4 | struct fixed_phy_status { |
a79d8e93 VB |
5 | int link; |
6 | int speed; | |
7 | int duplex; | |
8 | int pause; | |
9 | int asym_pause; | |
7c32f470 VB |
10 | }; |
11 | ||
a7595121 TP |
12 | struct device_node; |
13 | ||
6539c44d | 14 | #if IS_ENABLED(CONFIG_FIXED_PHY) |
a79d8e93 VB |
15 | extern int fixed_phy_add(unsigned int irq, int phy_id, |
16 | struct fixed_phy_status *status); | |
fd2ef0ba PG |
17 | extern struct phy_device *fixed_phy_register(unsigned int irq, |
18 | struct fixed_phy_status *status, | |
19 | struct device_node *np); | |
46cfd6ea | 20 | extern void fixed_phy_del(int phy_addr); |
464c3668 FF |
21 | extern int fixed_phy_set_link_update(struct phy_device *phydev, |
22 | int (*link_update)(struct net_device *, | |
23 | struct fixed_phy_status *)); | |
a79d8e93 VB |
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 | } | |
fd2ef0ba PG |
30 | static inline struct phy_device *fixed_phy_register(unsigned int irq, |
31 | struct fixed_phy_status *status, | |
32 | struct device_node *np) | |
a7595121 | 33 | { |
fd2ef0ba | 34 | return ERR_PTR(-ENODEV); |
a7595121 | 35 | } |
46cfd6ea KZ |
36 | static inline int fixed_phy_del(int phy_addr) |
37 | { | |
38 | return -ENODEV; | |
39 | } | |
464c3668 | 40 | static inline int fixed_phy_set_link_update(struct phy_device *phydev, |
a79d8e93 | 41 | int (*link_update)(struct net_device *, |
464c3668 FF |
42 | struct fixed_phy_status *)) |
43 | { | |
44 | return -ENODEV; | |
45 | } | |
46 | #endif /* CONFIG_FIXED_PHY */ | |
7c32f470 VB |
47 | |
48 | #endif /* __PHY_FIXED_H */ |