Hi York,
> -----Original Message----- > From: york sun > Sent: Tuesday, November 08, 2016 12:12 AM > To: Prabhakar Kushwaha <prabhakar.kushw...@nxp.com> > Cc: shh....@gmail.com; u-boot@lists.denx.de; S.H. Xie <shaohui....@nxp.com> > Subject: Re: [PATCH] armv8: ls2080aqds: fix SGMII repeater settings > > On 10/17/2016 01:33 AM, shh....@gmail.com wrote: > > From: Shaohui Xie <shaohui....@nxp.com> > > > > The current value to check whether the PHY was configured has dependency > > on MC, it expects MC to start PCS AN, this is not true during boot up, > > so it should be changed to remove the dependency. > > > > The PHY's register space should be restore to default after accessing > > extended space. > > > > Signed-off-by: Shaohui Xie <shaohui....@nxp.com> > > --- > > board/freescale/ls2080aqds/eth.c | 13 ++++++++----- > > 1 file changed, 8 insertions(+), 5 deletions(-) > > > > diff --git a/board/freescale/ls2080aqds/eth.c > b/board/freescale/ls2080aqds/eth.c > > index 95ff68b..cf6791e 100644 > > --- a/board/freescale/ls2080aqds/eth.c > > +++ b/board/freescale/ls2080aqds/eth.c > > @@ -144,8 +144,10 @@ static void sgmii_configure_repeater(int serdes_port) > > > > mdelay(10); > > > > - if ((value & 0xfff) == 0x40f) { > > + if ((value & 0xfff) == 0x401) { > > printf("DPMAC %d:PHY is ..... Configured\n", > dpmac_id); > > + miiphy_write(dev[mii_bus], riser_phy_addr[dpmac], > > + 0x1f, 0); > > continue; > > } > > > > @@ -181,28 +183,29 @@ static void sgmii_configure_repeater(int > serdes_port) > > if (ret > 0) > > goto error; > > > > - mdelay(1); > > + mdelay(100); > > Why change the delay? > > > ret = miiphy_read(dev[mii_bus], > > riser_phy_addr[dpmac], > > 0x11, &value); > > if (ret > 0) > > goto error; > > - mdelay(10); > > > > - if ((value & 0xfff) == 0x40f) { > > + if ((value & 0xfff) == 0x401) { > > printf("DPMAC %d :PHY is configured ", > > dpmac_id); > > printf("after setting repeater 0x%x\n", > > value); > > i = 5; > > j = 5; > > - } else > > + } else { > > printf("DPMAC %d :PHY is failed to ", > > dpmac_id); > > printf("configure the repeater 0x%x\n", > > value); > > } > > + } > > } > > + miiphy_write(dev[mii_bus], riser_phy_addr[dpmac], 0x1f, 0); > > } > > error: > > if (ret) > > > > Prabhakar, > > Do these changes look correct to you? > These changes looks fine. Please note with older code, sometime SGMII riser card was not getting configured. It is now more consistent. --prabhakar _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot