diff options
author | Heiner Kallweit <hkallweit1@gmail.com> | 2019-05-30 15:11:06 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2019-05-30 15:02:33 -0700 |
commit | 97b33bdf9bddb6bebc2e87148df3e30aa7a13b2d (patch) | |
tree | 7d7ec060b20abfcf99fae544c2cb9c392dc0e2bd /include/linux/phy.h | |
parent | 49644e68f472c6480e015253fa4d7448c6cfa2aa (diff) | |
download | linux-stable-97b33bdf9bddb6bebc2e87148df3e30aa7a13b2d.tar.gz linux-stable-97b33bdf9bddb6bebc2e87148df3e30aa7a13b2d.tar.bz2 linux-stable-97b33bdf9bddb6bebc2e87148df3e30aa7a13b2d.zip |
net: phy: export phy_queue_state_machine
We face the issue that link change interrupt and link status may be
reported by different PHY layers. As a result the link change
interrupt may occur before the link status changes.
Export phy_queue_state_machine to allow PHY drivers to specify a
delay between link status change interrupt and link status check.
v2:
- change jiffies parameter type to unsigned long
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Suggested-by: Russell King <rmk+kernel@armlinux.org.uk>
Acked-by: Russell King <rmk+kernel@armlinux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/phy.h')
-rw-r--r-- | include/linux/phy.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/phy.h b/include/linux/phy.h index 16cd33915496..dc4b51060ebc 100644 --- a/include/linux/phy.h +++ b/include/linux/phy.h @@ -188,7 +188,6 @@ static inline const char *phy_modes(phy_interface_t interface) #define PHY_INIT_TIMEOUT 100000 -#define PHY_STATE_TIME 1 #define PHY_FORCE_TIMEOUT 10 #define PHY_MAX_ADDR 32 @@ -1140,6 +1139,7 @@ int phy_driver_register(struct phy_driver *new_driver, struct module *owner); int phy_drivers_register(struct phy_driver *new_driver, int n, struct module *owner); void phy_state_machine(struct work_struct *work); +void phy_queue_state_machine(struct phy_device *phydev, unsigned long jiffies); void phy_mac_interrupt(struct phy_device *phydev); void phy_start_machine(struct phy_device *phydev); void phy_stop_machine(struct phy_device *phydev); |