12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- From 76e9965a69ff97c3ca973ca54f145a96023bdeca Mon Sep 17 00:00:00 2001
- From: Phil Sutter <phil@nwl.cc>
- Date: Wed, 14 May 2014 03:24:00 +0200
- Subject: [PATCH] phy: add detach callback to struct phy_driver
- This is used by ar8216 driver.
- ---
- drivers/net/phy/phy_device.c | 4 ++++
- include/linux/phy.h | 6 ++++++
- 2 files changed, 10 insertions(+)
- diff --git a/drivers/net/phy/phy_device.c b/drivers/net/phy/phy_device.c
- index 3653754..b35ece2 100644
- --- a/drivers/net/phy/phy_device.c
- +++ b/drivers/net/phy/phy_device.c
- @@ -662,6 +662,10 @@ EXPORT_SYMBOL(phy_attach);
- void phy_detach(struct phy_device *phydev)
- {
- int i;
- +
- + if (phydev->drv && phydev->drv->detach)
- + phydev->drv->detach(phydev);
- +
- phydev->attached_dev->phydev = NULL;
- phydev->attached_dev = NULL;
- phy_suspend(phydev);
- diff --git a/include/linux/phy.h b/include/linux/phy.h
- index 9ab0d79..f1441b4 100644
- --- a/include/linux/phy.h
- +++ b/include/linux/phy.h
- @@ -432,6 +432,12 @@ struct phy_driver {
- */
- int (*did_interrupt)(struct phy_device *phydev);
-
- + /*
- + * Called before an ethernet device is detached
- + * from the PHY.
- + */
- + void (*detach)(struct phy_device *phydev);
- +
- /* Clears up any memory if needed */
- void (*remove)(struct phy_device *phydev);
-
- --
- 1.8.5.3
|