Message ID | 1403681075-16181-1-git-send-email-voice.shen@atmel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Hello, 2014-06-25 0:24 GMT-07:00 Bo Shen <voice.shen@atmel.com>: > If the fixups parameters get from dtb, it won't set has_fixups > parameters, so when read phy_has_fixups attribute, it always > present as 0. > Add this patch to make phy_has_fixups attribute read correctly. I am not entirely sure whether loading values from Device Tree should be considered a PHY fixup per-se. They do override the hardware reset default values, but I am not sure if we should consider that as a fixup. Assuming that you need to troubleshoot a given system, one of the first things you will surely ask for is the DTS used by that platform, and in that case you can quickly check whether the PHY default settings are changed, right? > > Signed-off-by: Bo Shen <voice.shen@atmel.com> > --- > drivers/net/phy/micrel.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/drivers/net/phy/micrel.c b/drivers/net/phy/micrel.c > index bc7c7d2..c384922 100644 > --- a/drivers/net/phy/micrel.c > +++ b/drivers/net/phy/micrel.c > @@ -237,6 +237,8 @@ static int ksz9021_load_values_from_of(struct phy_device *phydev, > > if (!matches) > return 0; > + else > + phydev->has_fixups = true; There is no need for the else here > > if (matches < 4) > newval = kszphy_extended_read(phydev, reg); > @@ -330,6 +332,8 @@ static int ksz9031_of_load_skew_values(struct phy_device *phydev, > > if (!matches) > return 0; > + else > + phydev->has_fixups = true; Same here > > if (matches < numfields) > newval = ksz9031_extended_read(phydev, OP_DATA, 2, reg); > -- > 1.8.5.2 >
Hi Florian, On 06/27/2014 02:00 AM, Florian Fainelli wrote: > Hello, > > 2014-06-25 0:24 GMT-07:00 Bo Shen <voice.shen@atmel.com>: >> If the fixups parameters get from dtb, it won't set has_fixups >> parameters, so when read phy_has_fixups attribute, it always >> present as 0. >> Add this patch to make phy_has_fixups attribute read correctly. > > I am not entirely sure whether loading values from Device Tree should > be considered a PHY fixup per-se. They do override the hardware reset > default values, but I am not sure if we should consider that as a > fixup. In old method, we will call phy_register_fixup_for_uid to update this configuration, which will set the phy_has_fixups as true, then it regards as fix up. So, can we also consider loading values from DTS also as fix up? > Assuming that you need to troubleshoot a given system, one of the > first things you will surely ask for is the DTS used by that platform, > and in that case you can quickly check whether the PHY default > settings are changed, right? I am not sure I am fully understand here. The value retrieve from DTS is used to overwrite the default value, so I think it is no need to check. >> >> Signed-off-by: Bo Shen <voice.shen@atmel.com> >> --- >> drivers/net/phy/micrel.c | 4 ++++ >> 1 file changed, 4 insertions(+) >> >> diff --git a/drivers/net/phy/micrel.c b/drivers/net/phy/micrel.c >> index bc7c7d2..c384922 100644 >> --- a/drivers/net/phy/micrel.c >> +++ b/drivers/net/phy/micrel.c >> @@ -237,6 +237,8 @@ static int ksz9021_load_values_from_of(struct phy_device *phydev, >> >> if (!matches) >> return 0; >> + else >> + phydev->has_fixups = true; > > There is no need for the else here > >> >> if (matches < 4) >> newval = kszphy_extended_read(phydev, reg); >> @@ -330,6 +332,8 @@ static int ksz9031_of_load_skew_values(struct phy_device *phydev, >> >> if (!matches) >> return 0; >> + else >> + phydev->has_fixups = true; > > Same here > >> >> if (matches < numfields) >> newval = ksz9031_extended_read(phydev, OP_DATA, 2, reg); >> -- >> 1.8.5.2 Best Regards, Bo Shen
diff --git a/drivers/net/phy/micrel.c b/drivers/net/phy/micrel.c index bc7c7d2..c384922 100644 --- a/drivers/net/phy/micrel.c +++ b/drivers/net/phy/micrel.c @@ -237,6 +237,8 @@ static int ksz9021_load_values_from_of(struct phy_device *phydev, if (!matches) return 0; + else + phydev->has_fixups = true; if (matches < 4) newval = kszphy_extended_read(phydev, reg); @@ -330,6 +332,8 @@ static int ksz9031_of_load_skew_values(struct phy_device *phydev, if (!matches) return 0; + else + phydev->has_fixups = true; if (matches < numfields) newval = ksz9031_extended_read(phydev, OP_DATA, 2, reg);
If the fixups parameters get from dtb, it won't set has_fixups parameters, so when read phy_has_fixups attribute, it always present as 0. Add this patch to make phy_has_fixups attribute read correctly. Signed-off-by: Bo Shen <voice.shen@atmel.com> --- drivers/net/phy/micrel.c | 4 ++++ 1 file changed, 4 insertions(+)