lkml.org 
[lkml]   [2017]   [Jul]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.11 01/88] net/phy: micrel: configure intterupts after autoneg workaround
    Date
    4.11-stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Zach Brown <zach.brown@ni.com>


    [ Upstream commit b866203d872d5deeafcecd25ea429d6748b5bd56 ]

    The commit ("net/phy: micrel: Add workaround for bad autoneg") fixes an
    autoneg failure case by resetting the hardware. This turns off
    intterupts. Things will work themselves out if the phy polls, as it will
    figure out it's state during a poll. However if the phy uses only
    intterupts, the phy will stall, since interrupts are off. This patch
    fixes the issue by calling config_intr after resetting the phy.

    Fixes: d2fd719bcb0e ("net/phy: micrel: Add workaround for bad autoneg ")
    Signed-off-by: Zach Brown <zach.brown@ni.com>
    Reviewed-by: Andrew Lunn <andrew@lunn.ch>
    Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ---
    drivers/net/phy/micrel.c | 2 ++
    1 file changed, 2 insertions(+)

    --- a/drivers/net/phy/micrel.c
    +++ b/drivers/net/phy/micrel.c
    @@ -611,6 +611,8 @@ static int ksz9031_read_status(struct ph
    if ((regval & 0xFF) == 0xFF) {
    phy_init_hw(phydev);
    phydev->link = 0;
    + if (phydev->drv->config_intr && phy_interrupt_is_valid(phydev))
    + phydev->drv->config_intr(phydev);
    }

    return 0;

    \
     
     \ /
      Last update: 2017-07-19 12:50    [W:2.255 / U:0.108 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site