[OpenRD Ultimate] e1000phy(88E1149/88E1121) has a initialize
issue
Kristof Provost
kristof at sigsegv.be
Sun Jun 20 13:01:08 UTC 2010
On 2010-06-20 21:03:51 (+0900), Norikatsu Shigemura <nork at FreeBSD.org> wrote:
> On Sun, 13 Jun 2010 22:13:31 +0200
> Kristof Provost <kristof at sigsegv.be> wrote:
> > > I have a OpenRD Ultimate, which has two GbE ports - if_mge(4). But
> > > I couldn't use mge1 like following. So I tried to investigate.
> > > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> > > Jun 13 05:02:14 sidearms kernel: mge1: watchdog timeout
> > > Jun 13 05:02:14 sidearms kernel: mge1: Timeout on link-up
> > > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> > I believe the mge(4) driver incorrectly configures the PHY address for
> > the second interface. Can you give the attached patch a try?
>
> Thank you. I think so, too. And, by FDT, I suggest following
> patch.
>
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> /* Tell the MAC where to find the PHY so autoneg works */
> - miisc = LIST_FIRST(&sc->mii->mii_phys);
> - MGE_WRITE(sc, MGE_REG_PHYDEV, miisc->mii_phy);
> + MGE_WRITE(sc, MGE_REG_PHYDEV, sc->phyaddr);
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
>
I think that's correct, but I haven't been able to test it on my board
yet. Does this work for you on a board with two GbE ports? If so I'll
try to get someone to commit it.
Regards,
Kristof
More information about the freebsd-current
mailing list