blob: 509d8f5f984e3985cffe178b8a335498f30bcf50 [file] [log] [blame]
Vitaly Bordug7c32f472007-08-10 14:05:16 -07001#ifndef __PHY_FIXED_H
2#define __PHY_FIXED_H
3
Vitaly Bordug7c32f472007-08-10 14:05:16 -07004struct fixed_phy_status {
Vitaly Borduga79d8e92007-12-07 01:51:22 +03005 int link;
6 int speed;
7 int duplex;
8 int pause;
9 int asym_pause;
Vitaly Bordug7c32f472007-08-10 14:05:16 -070010};
11
Vitaly Borduga79d8e92007-12-07 01:51:22 +030012#ifdef CONFIG_FIXED_PHY
13extern int fixed_phy_add(unsigned int irq, int phy_id,
14 struct fixed_phy_status *status);
15#else
16static inline int fixed_phy_add(unsigned int irq, int phy_id,
17 struct fixed_phy_status *status)
18{
19 return -ENODEV;
20}
21#endif /* CONFIG_FIXED_PHY */
Vitaly Bordug7c32f472007-08-10 14:05:16 -070022
Vitaly Borduga79d8e92007-12-07 01:51:22 +030023/*
24 * This function issued only by fixed_phy-aware drivers, no need
25 * protect it with #ifdef
26 */
27extern int fixed_phy_set_link_update(struct phy_device *phydev,
28 int (*link_update)(struct net_device *,
29 struct fixed_phy_status *));
Vitaly Bordug7c32f472007-08-10 14:05:16 -070030
31#endif /* __PHY_FIXED_H */