Date: Tue, 3 Jun 2008 17:44:04 +0900 From: Pyun YongHyeon <pyunyh@gmail.com> To: Norikatsu Shigemura <nork@FreeBSD.org> Cc: Bill Paul <wpaul@FreeBSD.org>, freebsd-current@FreeBSD.org, Sam Leffler <sam@FreeBSD.org> Subject: Re: axe(4) doesn't work (patch to replace obsolete if_watchdog interface) Message-ID: <20080603084404.GB87699@cdnetworks.co.kr> In-Reply-To: <20080603134425.e78589b5.nork@FreeBSD.org> References: <20080602034630.eb07fe5c.nork@FreeBSD.org> <20080602003948.GA83841@cdnetworks.co.kr> <20080603011316.7736c782.nork@FreeBSD.org> <20080603010001.GA87699@cdnetworks.co.kr> <20080603134425.e78589b5.nork@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--1LKvkjL3sHcu1TtY Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Tue, Jun 03, 2008 at 01:44:25PM +0900, Norikatsu Shigemura wrote: > On Tue, 3 Jun 2008 10:00:01 +0900 > Pyun YongHyeon <pyunyh@gmail.com> wrote: > > > ukphy0: OUI 0x1e525e, model 0x0014, rev. 9 > > ^^^^^^^^^^^^ > > This OUI does not exist in IEEE OUI database so I vaguely guess > > this one comes from broken MII_OUI macro implementation in FreeBSD. > > Because PHY vendors also made the same mistake as FreeBSD this > > hasn't been much problem so far. Would you apply the following > > patch and let me know the output of ukphy(4)? > > Please see following result. > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - > miibus0: <MII bus> on axe0 > ukphy0: <Generic IEEE 802.3u media interface> PHY 0 on miibus0 > ukphy0: OUI 0x1e525e, model 0x0014, rev. 9 > ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseSX, 1000baseT, 1000baseT-FDX, auto > ukphy0: IDR1 = 0x7949, IDR2 = 0x7949 Hmm, this also looks like faked one. Probably PHY address was incorrectly chosen. I guess the PHY would be one of Marvell variants. If this is correct guess, I think ax88178_init() should be called prior to any other operations(patch attached). Sam, what's your opinion? -- Regards, Pyun YongHyeon --1LKvkjL3sHcu1TtY Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="axe.patch" --- if_axe.c.orig 2008-06-03 11:09:23.000000000 +0900 +++ if_axe.c 2008-06-03 17:41:16.000000000 +0900 @@ -608,14 +608,14 @@ AXE_SLEEPLOCK(sc); AXE_LOCK(sc); - /* We need the PHYID for the init dance in some cases */ - axe_cmd(sc, AXE_CMD_READ_PHYID, 0, 0, (void *)&sc->axe_phyaddrs); - if (sc->axe_flags & AX178) axe_ax88178_init(sc); else if (sc->axe_flags & AX772) axe_ax88772_init(sc); + /* We need the PHYID for the init dance in some cases */ + axe_cmd(sc, AXE_CMD_READ_PHYID, 0, 0, (void *)&sc->axe_phyaddrs); + /* * Get station address. */ --1LKvkjL3sHcu1TtY--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20080603084404.GB87699>