[U-Boot-Users] [PATCH] net: uec_phy: handle 88e1111 rev.B2 erratum 5.6

Ben Warren biggerbadderben at gmail.com
Thu Feb 28 01:46:29 CET 2008


Wolfgang,

Please pull directly into 1.3.2 if possible

thanks,
Ben

Acked-by: Ben Warren <biggerbadderben at gmail.com>

On Wed, Feb 27, 2008 at 4:06 PM, Kim Phillips
<kim.phillips at freescale.com> wrote:
> erratum 5.6 states the autoneg completion bit is functional only if the
>  autoneg bit is asserted.
>
>  This fixes any secondarily-issued networking commands on non-gigabit
>  links on the mpc8360 mds board.
>
>  Signed-off-by: Kim Phillips <kim.phillips at freescale.com>
>  ---
>  gvb, please test, and give us your blessings if this fixes your second
>  ping failing issue.
>
>  To go through biggerbadderben, for 1.3.2.
>
>   drivers/qe/uec_phy.c |    8 ++++++++
>   1 files changed, 8 insertions(+), 0 deletions(-)
>
>  diff --git a/drivers/qe/uec_phy.c b/drivers/qe/uec_phy.c
>  index c549b6b..cf9921b 100644
>  --- a/drivers/qe/uec_phy.c
>  +++ b/drivers/qe/uec_phy.c
>  @@ -574,6 +574,7 @@ void marvell_phy_interface_mode (struct eth_device *dev,
>   {
>         uec_private_t *uec = (uec_private_t *) dev->priv;
>         struct uec_mii_info *mii_info;
>  +       u16 status;
>
>         if (!uec->mii_info) {
>                 printf ("%s: the PHY not intialized\n", __FUNCTION__);
>  @@ -609,6 +610,13 @@ void marvell_phy_interface_mode (struct eth_device *dev,
>                 phy_write (mii_info, 0x00, 0x8100);
>                 udelay (1000000);
>         }
>  +
>  +       /* handle 88e1111 rev.B2 erratum 5.6 */
>  +       if (mii_info->autoneg) {
>  +               status = phy_read (mii_info, PHY_BMCR);
>  +               phy_write (mii_info, PHY_BMCR, status | PHY_BMCR_AUTON);
>  +       }
>  +       /* now the B2 will correctly report autoneg completion status */
>   }
>
>   void change_phy_interface_mode (struct eth_device *dev, enet_interface_e mode)
>  --
>  1.5.4.23.gef5b9
>
>




More information about the U-Boot mailing list