Author: br
Date: Sat Jan  4 10:19:21 2014
New Revision: 260256
URL: http://svnweb.freebsd.org/changeset/base/260256

Log:
  ENET on Vybrid Family SoC don't advertise its media capabilities
  themselves properly, so force auto-negotiation.
  
  Tested on mvf600.
  
  Reviewed by:  ian

Modified:
  head/sys/dev/ffec/if_ffec.c

Modified: head/sys/dev/ffec/if_ffec.c
==============================================================================
--- head/sys/dev/ffec/if_ffec.c Sat Jan  4 09:57:23 2014        (r260255)
+++ head/sys/dev/ffec/if_ffec.c Sat Jan  4 10:19:21 2014        (r260256)
@@ -96,6 +96,7 @@ enum {
        FECTYPE_GENERIC,
        FECTYPE_IMX53,
        FECTYPE_IMX6,
+       FECTYPE_MVF,
 };
 
 /*
@@ -112,8 +113,8 @@ static struct ofw_compat_data compat_dat
        {"fsl,imx51-fec",       FECTYPE_GENERIC},
        {"fsl,imx53-fec",       FECTYPE_IMX53},
        {"fsl,imx6q-fec",       FECTYPE_IMX6 | FECFLAG_GBE},
-       {"fsl,mvf600-fec",      FECTYPE_GENERIC},
-       {"fsl,vf-fec",          FECTYPE_GENERIC},
+       {"fsl,mvf600-fec",      FECTYPE_MVF},
+       {"fsl,mvf-fec",         FECTYPE_MVF},
        {NULL,                  FECTYPE_NONE},
 };
 
@@ -1686,7 +1687,8 @@ ffec_attach(device_t dev)
 
        /* Attach the mii driver. */
        error = mii_attach(dev, &sc->miibus, ifp, ffec_media_change,
-           ffec_media_status, BMSR_DEFCAPMASK, MII_PHY_ANY, MII_OFFSET_ANY, 0);
+           ffec_media_status, BMSR_DEFCAPMASK, MII_PHY_ANY, MII_OFFSET_ANY,
+           (sc->fectype & FECTYPE_MVF) ? MIIF_FORCEANEG : 0);
        if (error != 0) {
                device_printf(dev, "PHY attach failed\n");
                goto out;
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to