[LEDE-DEV] [PATCH 1/2] generic: ar8216: fix ar8xxx_is_possible check

John Crispin john at phrozen.org
Mon Oct 3 12:12:32 PDT 2016



On 01/10/2016 18:33, Christian Lamparter wrote:
> The commit "generic: ar8216: add sanity check to ar8216_probe"
> (774da6c7a40320a320b28d71291c0e61fcf7bc8a) stated that PHY IDs
> should be checked at address 0-4. However, the PHY 4 was
> never check by the for loop... And I can't find any documents
> about why this check should be performed the way it is
> currently?!

Hi

the SDK driver checks for the phy ids if i am not mistaken. doing the
cech does make sense to ensure that the switch is actually present. why
do you want to remove this check ? imho it does no harm

	John

> 
> Signed-off-by: Christian Lamparter <chunkeey at gmail.com>
> ---
>  .../linux/generic/files/drivers/net/phy/ar8216.c   | 23 ----------------------
>  1 file changed, 23 deletions(-)
> 
> diff --git a/target/linux/generic/files/drivers/net/phy/ar8216.c b/target/linux/generic/files/drivers/net/phy/ar8216.c
> index 70f4774..57130b1 100644
> --- a/target/linux/generic/files/drivers/net/phy/ar8216.c
> +++ b/target/linux/generic/files/drivers/net/phy/ar8216.c
> @@ -2110,26 +2110,6 @@ ar8xxx_phy_match(u32 phy_id)
>  	return false;
>  }
>  
> -static bool
> -ar8xxx_is_possible(struct mii_bus *bus)
> -{
> -	unsigned i;
> -
> -	for (i = 0; i < 4; i++) {
> -		u32 phy_id;
> -
> -		phy_id = mdiobus_read(bus, i, MII_PHYSID1) << 16;
> -		phy_id |= mdiobus_read(bus, i, MII_PHYSID2);
> -		if (!ar8xxx_phy_match(phy_id)) {
> -			pr_debug("ar8xxx: unknown PHY at %s:%02x id:%08x\n",
> -				 dev_name(&bus->dev), i, phy_id);
> -			return false;
> -		}
> -	}
> -
> -	return true;
> -}
> -
>  static int
>  ar8xxx_phy_probe(struct phy_device *phydev)
>  {
> @@ -2141,9 +2121,6 @@ ar8xxx_phy_probe(struct phy_device *phydev)
>  	if (phydev->addr != 0 && phydev->addr != 4)
>  		return -ENODEV;
>  
> -	if (!ar8xxx_is_possible(phydev->bus))
> -		return -ENODEV;
> -
>  	mutex_lock(&ar8xxx_dev_list_lock);
>  	list_for_each_entry(priv, &ar8xxx_dev_list, list)
>  		if (priv->mii_bus == phydev->bus)
> 



More information about the Lede-dev mailing list