On Thu, Jul 07, 2011 at 11:26:08AM -0500, Nathan Whitehorn wrote: > On 07/07/11 11:07, Marius Strobl wrote: > >On Thu, Jul 07, 2011 at 09:34:39AM -0500, Nathan Whitehorn wrote: > >>This breaks one of my gem devices (chip=0x0021106b) when the controller > >>is initialized from FreeBSD (netbooting works fine, and the controller > >>stays working after that), with "cannot disable RX MAC" or "cannot > >>disable RX MAC or hash filter" messages. > >Are you positive that it's exactly this revision which breaks things? > >Actually there was a report from Justin Hibbits that r222135 causing > >a GMAC to no longer work with similar symptoms, which still is unsolved > >AFAICT. If it's really r223648 which is causing problems in your case > >please try to figure out which part is causing that as none of the > >changes exactly stands out as disruptive, probably best by reverting > >gem_reset_rx() and gem_setladrf() one by one. > > > > You're right. r223648 just added the printf(), r222135 is where it began > not working.
Yes, I know that. I still have no clue and can't explain how r222135 can break gem(4). Also note, the "cannot disable RX MAC" was there before r222135. One vague guess I have at this moment is that firmware may have put controller into some deep power save state so the first time gem_init() is called it may not have fully initialized the controller. I sent a patch to Justin to check that and waiting for his reply. > -Nathan
Index: sys/dev/gem/if_gem.c =================================================================== --- sys/dev/gem/if_gem.c (revision 223682) +++ sys/dev/gem/if_gem.c (working copy) @@ -328,6 +328,9 @@ phy = MII_PHY_ANY; break; } + if (GEM_IS_APPLE(sc)) + GEM_BANK1_WRITE_4(sc, GEM_MAC_XIF_CONFIG, + GEM_MAC_XIF_TX_MII_ENA); error = mii_attach(sc->sc_dev, &sc->sc_miibus, ifp, gem_mediachange, gem_mediastatus, BMSR_DEFCAPMASK, phy, MII_OFFSET_ANY, MIIF_DOPAUSE);
_______________________________________________ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"