Revert "net: phy: micrel: Restore led_mode and clk_sel on resume"
This reverts commit d7ba3c00047dfd88fe0360a2d27169b54c88c4f1 which was commit 79e498a9c7da0737829ff864aae44df434105676 upstream. Turns out it breaks things, so drop it. Reported-by: Naresh Kamboju <naresh.kamboju@linaro.org> Cc: Leonard Crestez <leonard.crestez@nxp.com> Cc: Florian Fainelli <f.fainelli@gmail.com> Cc: David S. Miller <davem@davemloft.net> Cc: Sasha Levin <alexander.levin@microsoft.com> Cc: Dan Rue <dan.rue@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
1cd969fdb4
commit
c3ba64bb3a
@ -268,12 +268,23 @@ out:
|
||||
return ret;
|
||||
}
|
||||
|
||||
/* Some config bits need to be set again on resume, handle them here. */
|
||||
static int kszphy_config_reset(struct phy_device *phydev)
|
||||
static int kszphy_config_init(struct phy_device *phydev)
|
||||
{
|
||||
struct kszphy_priv *priv = phydev->priv;
|
||||
const struct kszphy_type *type;
|
||||
int ret;
|
||||
|
||||
if (!priv)
|
||||
return 0;
|
||||
|
||||
type = priv->type;
|
||||
|
||||
if (type->has_broadcast_disable)
|
||||
kszphy_broadcast_disable(phydev);
|
||||
|
||||
if (type->has_nand_tree_disable)
|
||||
kszphy_nand_tree_disable(phydev);
|
||||
|
||||
if (priv->rmii_ref_clk_sel) {
|
||||
ret = kszphy_rmii_clk_sel(phydev, priv->rmii_ref_clk_sel_val);
|
||||
if (ret) {
|
||||
@ -284,7 +295,7 @@ static int kszphy_config_reset(struct phy_device *phydev)
|
||||
}
|
||||
|
||||
if (priv->led_mode >= 0)
|
||||
kszphy_setup_led(phydev, priv->type->led_mode_reg, priv->led_mode);
|
||||
kszphy_setup_led(phydev, type->led_mode_reg, priv->led_mode);
|
||||
|
||||
if (phy_interrupt_is_valid(phydev)) {
|
||||
int ctl = phy_read(phydev, MII_BMCR);
|
||||
@ -300,25 +311,6 @@ static int kszphy_config_reset(struct phy_device *phydev)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int kszphy_config_init(struct phy_device *phydev)
|
||||
{
|
||||
struct kszphy_priv *priv = phydev->priv;
|
||||
const struct kszphy_type *type;
|
||||
|
||||
if (!priv)
|
||||
return 0;
|
||||
|
||||
type = priv->type;
|
||||
|
||||
if (type->has_broadcast_disable)
|
||||
kszphy_broadcast_disable(phydev);
|
||||
|
||||
if (type->has_nand_tree_disable)
|
||||
kszphy_nand_tree_disable(phydev);
|
||||
|
||||
return kszphy_config_reset(phydev);
|
||||
}
|
||||
|
||||
static int ksz8041_config_init(struct phy_device *phydev)
|
||||
{
|
||||
struct device_node *of_node = phydev->mdio.dev.of_node;
|
||||
@ -723,14 +715,8 @@ static int kszphy_suspend(struct phy_device *phydev)
|
||||
|
||||
static int kszphy_resume(struct phy_device *phydev)
|
||||
{
|
||||
int ret;
|
||||
|
||||
genphy_resume(phydev);
|
||||
|
||||
ret = kszphy_config_reset(phydev);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
/* Enable PHY Interrupts */
|
||||
if (phy_interrupt_is_valid(phydev)) {
|
||||
phydev->interrupts = PHY_INTERRUPT_ENABLED;
|
||||
|
Loading…
x
Reference in New Issue
Block a user