Dear Roy Zang,

In message <1319178713-12472-2-git-send-email-tie-fei.z...@freescale.com> you 
wrote:
> The original m88e1111s_config() does not do the SGMII mode
> initialization and is buggy. Rewrite the function according to
> 3.0.6 kernel function m88e1111_config_init() in drivers/net/phy/marvell.c
> 
> Signed-off-by: Roy Zang <tie-fei.z...@freescale.com>
> Acked-by: Andy Fleming <aflem...@freescale.com>
> Cc: Kumar Gala <ga...@kernel.crashing.org>
...
> +             /* soft reset */
> +             phy_write(phydev, MDIO_DEVAD_NONE, MII_BMCR, BMCR_RESET);
> +             do
> +                     reg = phy_read(phydev, MDIO_DEVAD_NONE, MII_BMCR);
> +             while (reg & BMCR_RESET);
...
> +     /* soft reset */
> +     phy_write(phydev, MDIO_DEVAD_NONE, MII_BMCR, BMCR_RESET);
> +     do
> +             reg = phy_read(phydev, MDIO_DEVAD_NONE, MII_BMCR);
> +     while (reg & BMCR_RESET);

Do we really need this double reset?

Also, I dislike the potentially infinite loop here - please add a
timeout and an error exit.

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de
A supercomputer is a machine that runs an endless loop in 2 seconds.
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to