Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 15 Oct 2011 22:47:39 +0200
From:      Marius Strobl <marius@alchemy.franken.de>
To:        YongHyeon PYUN <pyunyh@gmail.com>
Cc:        freebsd-net@freebsd.org, dave jones <s.dave.jones@gmail.com>
Subject:   Re: Question about GPIO bitbang MII
Message-ID:  <20111015204739.GJ39118@alchemy.franken.de>
In-Reply-To: <20111014203226.GA16192@michelle.cdnetworks.com>
References:  <CANf5e8bcAfrXX%2BuqzVRoZJPmsvyPegx%2BFOYHSt-GHwEigUCoeg@mail.gmail.com> <20111009165838.GA19886@alchemy.franken.de> <20111010192238.GC1781@michelle.cdnetworks.com> <20111011212318.GC81376@alchemy.franken.de> <20111011225531.GD5661@michelle.cdnetworks.com> <20111012204222.GC39118@alchemy.franken.de> <20111012235707.GD9138@michelle.cdnetworks.com> <20111013214903.GH39118@alchemy.franken.de> <20111014203226.GA16192@michelle.cdnetworks.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Oct 14, 2011 at 01:32:26PM -0700, YongHyeon PYUN wrote:
> On Thu, Oct 13, 2011 at 11:49:03PM +0200, Marius Strobl wrote:
> > On Wed, Oct 12, 2011 at 04:57:07PM -0700, YongHyeon PYUN wrote:
> > > On Wed, Oct 12, 2011 at 10:42:22PM +0200, Marius Strobl wrote:
> > > > On Tue, Oct 11, 2011 at 03:55:31PM -0700, YongHyeon PYUN wrote:
> > > > > On Tue, Oct 11, 2011 at 11:23:18PM +0200, Marius Strobl wrote:
> > > > > > On Mon, Oct 10, 2011 at 12:22:38PM -0700, YongHyeon PYUN wrote:
> > > > > > > On Sun, Oct 09, 2011 at 06:58:38PM +0200, Marius Strobl wrote:
> > > > > > > > On Fri, Oct 07, 2011 at 10:34:58AM +0800, dave jones wrote:
> > > > > > > > > Hi,
> > > > > > > > > 
> > > > > > > > > Does FreeBSD have gpio bitbang api for MII? If not, any driver in tree using
> > > > > > > > > gpio-bitbang mii that I can refer to? Thanks.
> > > > > > > > > It seems like OpenBSD, NetBSD and Linux have added support to gpio bitbang mii,
> > > > > > > > > and it's useful for porting embedded devices.
> > > > > > > > > 
> > > > > > > > 
> > > > > > > > If what you are referring to is their mii_bitbang.[c,h] then I've a patch
> > > > > > > > which (im)ports these and converts drivers to take advantage of it here:
> > > > > > > > http://people.freebsd.org/~marius/mii_bitbang.diff
> > > > > > > 
> > > > > > > Patch looks good to me.
> > > > > > > What about other drivers(rl(4), bm(4), lge(4), tl(4), nge(4), wb(4)
> > > > > > > and xe(4))?
> > > > > > > 
> > > > > > 
> > > > > > Meanwhile I've also converted bm(4), just re-fetch the patch. Generally
> > > > > > I've started with the drivers were the corresponding NetBSD one also
> > > > > > uses the common MII bitbang'ing code. As for nge(4), tl(4), wb(4) I'm
> > > > > > aware that these should also be convertible to the common code, I just
> > > > > > didn't get around to it so far. As for lge(4) that driver has some
> > > > > > remnants of MII bitbang'ing but doesn't actually use it AFAICT. I've
> > > > > 
> > > > > Ah, I just blindly grepped the string, sorry.
> > > > > 
> > > > > > previously missed rl(4) as I was only grepping beneath sys/dev and I
> > > > > > currently can't explain why I missed xe(4), so thanks for mentioning
> > > > > > these.
> > > > > > In my experience MII bitbang'ing is very fragile though and subtle
> > > > > > changes may break it so I don't want to commit these without testing
> > > > > > or in the case of smc(4) where at least the corresponding NetBSD
> > > > > > driver already uses the common code. Unfortunately, I only have
> > > > > > hardware for dc(4), stge(4), xl(4) and somewhere also for rl(4) and
> > > > > > tl(4) and I guess I can nwhitehorn@ regarding testing bm(4). Do you
> > > > > > happen to have hardware to test the remaining drivers, i.e. nge(4),
> > > > > > sis(4), ste(4), wb(4) and xe(4)?
> > > > > > 
> > > > > 
> > > > > I have access to sis(4) and ste(4). I also have a nge(4) but I'm
> > > > > not able to access to the hardware, at least in US.
> > > > > 
> > > > 
> > > > It would be great if you could test sis(4) and ste(4).
> > > > 
> > > 
> > > Ok, will do in this week.
> > > 
> > 
> > I just noticed that rl(4) only does MII bitbang'ing for the 8129 but I
> > only have a 8139. Do you happen do have the former so you could test the
> > patch with it?
> 
> Sorry, I don't have 8129 based controller.
> 
> > The patch is now complete as far as I'm willing to convert drivers. What's
> > left is ed(4) and xe(4). The former has several chip specific things
> > interwinded and I'm unsure whether it can be converted to use the common
> > code; I'd at least like to have hardware for the special cases to give
> > that a try. Xe(4) currently doesn't use miibus(4) (but should) so I
> > don't see much point in adding a dependency on miibus(4) just for the
> > bitbang'ing code on it (nor do I for not adding the common code to
> > miibus(4)).
> > 
> 
> Ok.
> Both sis(4) and ste(4) seem to work without problems.
> Thanks for your work!
> 

Thanks for testing!
While digging for test hardware I found a Intel 21143 based card I
decided to give a try for fun (as dc(4) doesn't use MII bitbang'ing
for these). Unfortunately, it turned out that some dc(4) changes
between 8.2-RELEASE an what's in head broke it in that it no longer
is able to establish a link (the link LED blinks periodically instead
of being lit permanently) ...

Marius




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20111015204739.GJ39118>