diff options
author | Grant Likely <grant.likely@secretlab.ca> | 2009-04-25 12:52:51 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-04-27 02:53:46 -0700 |
commit | fa94f6d93c5382810ff41f010f12ca8698fc775e (patch) | |
tree | 177e38a91f53221e0b15f8b5ed6b0ae66f6ffc52 /include/linux/phy.h | |
parent | 4dea547fef1ba23f9d23f5e7f5218187a7dcf1b3 (diff) | |
download | op-kernel-dev-fa94f6d93c5382810ff41f010f12ca8698fc775e.zip op-kernel-dev-fa94f6d93c5382810ff41f010f12ca8698fc775e.tar.gz |
phylib: add *_direct() variants of phy_connect and phy_attach functions
Add phy_connect_direct() and phy_attach_direct() functions so that
drivers can use a pointer to the phy_device instead of trying to determine
the phy's bus_id string.
This patch is useful for OF device tree descriptions of phy devices where
the driver doesn't need or know what the bus_id value in order to get a
phy_device pointer.
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Acked-by: Andy Fleming <afleming@freescale.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/phy.h')
-rw-r--r-- | include/linux/phy.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/include/linux/phy.h b/include/linux/phy.h index bf0b5f1..c216e4e 100644 --- a/include/linux/phy.h +++ b/include/linux/phy.h @@ -447,8 +447,13 @@ struct phy_device* get_phy_device(struct mii_bus *bus, int addr); int phy_device_register(struct phy_device *phy); int phy_clear_interrupt(struct phy_device *phydev); int phy_config_interrupt(struct phy_device *phydev, u32 interrupts); +int phy_attach_direct(struct net_device *dev, struct phy_device *phydev, + u32 flags, phy_interface_t interface); struct phy_device * phy_attach(struct net_device *dev, const char *bus_id, u32 flags, phy_interface_t interface); +int phy_connect_direct(struct net_device *dev, struct phy_device *phydev, + void (*handler)(struct net_device *), u32 flags, + phy_interface_t interface); struct phy_device * phy_connect(struct net_device *dev, const char *bus_id, void (*handler)(struct net_device *), u32 flags, phy_interface_t interface); |