Re: [PATCH 2/6] miidev: actually probe the PHY

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

On Mon, Jun 18, 2012 at 08:27:08PM +0200, Roberto Nibali wrote:
> On Mon, Jun 18, 2012 at 4:47 PM, Johannes Stezenbach <js@xxxxxxxxx> wrote:
> 
> > Check if the PHY is really accessible (e.g. the
> > PHY address is correct) during probe.
> >
> > Signed-off-by: Johannes Stezenbach <js@xxxxxxxxx>
> > ---
> >  drivers/net/miidev.c |   12 ++++++++++++
> >  1 file changed, 12 insertions(+)
> >
> > diff --git a/drivers/net/miidev.c b/drivers/net/miidev.c
> > index 272234e..3545889 100644
> > --- a/drivers/net/miidev.c
> > +++ b/drivers/net/miidev.c
> > @@ -225,6 +225,14 @@ static struct file_operations miidev_ops = {
> >  static int miidev_probe(struct device_d *dev)
> >  {
> >        struct mii_device *mdev = dev->priv;
> > +       int val;
> > +
> > +       val = mii_read(mdev, mdev->address, MII_PHYSID1);
> > +       if (val < 0 || val == 0xffff)
> > +               goto err_out;
> > +       val = mii_read(mdev, mdev->address, MII_PHYSID2);
> > +       if (val < 0 || val == 0xffff)
> > +               goto err_out;
> >
> >
> Suppose this has no influence on drivers/net/fec_imx.c:fec_set_hwaddr()
> returning -1?

Well, the MAC address goes to the MAC not the PHY... so it
shouldn't have any adverse effect on that.

Besides checking that the PHY address is correct this also
catches cases where the PHY is broken or not soldered correctly,
or when the MDIO clock divisor is wrong etc. 
Can save time in trouble shooting.


Johannes

_______________________________________________
barebox mailing list
barebox@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/barebox


[Index of Archives]     [Linux Embedded]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux