| #ifndef __PHY_FIXED_H |
| #define __PHY_FIXED_H |
| |
| #define MII_REGS_NUM 29 |
| |
| /* max number of virtual phy stuff */ |
| #define MAX_PHY_AMNT 10 |
| /* |
| The idea is to emulate normal phy behavior by responding with |
| pre-defined values to mii BMCR read, so that read_status hook could |
| take all the needed info. |
| */ |
| |
| struct fixed_phy_status { |
| u8 link; |
| u16 speed; |
| u8 duplex; |
| }; |
| |
| /*----------------------------------------------------------------------------- |
| * Private information hoder for mii_bus |
| *-----------------------------------------------------------------------------*/ |
| struct fixed_info { |
| u16 *regs; |
| u8 regs_num; |
| struct fixed_phy_status phy_status; |
| struct phy_device *phydev; /* pointer to the container */ |
| /* link & speed cb */ |
| int (*link_update) (struct net_device *, struct fixed_phy_status *); |
| |
| }; |
| |
| |
| int fixed_mdio_set_link_update(struct phy_device *, |
| int (*link_update) (struct net_device *, struct fixed_phy_status *)); |
| struct fixed_info *fixed_mdio_get_phydev (int phydev_ind); |
| |
| #endif /* __PHY_FIXED_H */ |