[illumos-Developer] Improved support added for Marvell Gigabit Ethernet controllers

Garrett D'Amore garrett at damore.org
Wed Aug 11 05:58:16 PDT 2010


Oh, I'm way past that point. :-)  (I do drivers for a living, so I had
gotten to that point within just a few minutes of testing.)

I find that the chip frequently does not work -- the transmit side works
fine, but the receive logic stalls or hangs.  I've made quite a lot of
modifications, but I'm also finding that both FreeBSD and OpenBSD have
the same problem, and those were the original upstream.  Recent builds
of Linux seem to be free of the problem so I've been trying to do a
careful analysis of the code and testing.

I *have* had points where the driver seemed to be working correctly, but
that was only when paired with a specific 100 Mbps peer.  With my normal
1G switch, only Linux and Windows seem to work reliably.

There are quite a few different initializations that the Linux sky2
driver does that are different from the yge driver.  Hopefully I'll have
this all worked out soon enough.

	-- Garrett

On Wed, 2010-08-11 at 04:41 -0700, ken mays wrote:
> Hi Garrett,
> 
> Here is my 'diff' of changes to the yge driver here to review.
> 
> Filed under  CR 6975987 as yge enhancement for Oracle.
> 
> Based on ON snv_147 (hg):
> 
> http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/pkg/manifests/driver-network-yge.mf
>      42 driver name=yge perms="* 0666 root sys" \
> 
>          alias=pciex1186,4001 \
>          alias=pciex1186,4b00 \
>          alias=pciex11ab,4354 \
>          alias=pciex11ab,4355 \
>          alias=pciex11ab,4360 \
>          alias=pciex11ab,4361 \
>          alias=pciex11ab,4362 \
>          alias=pciex11ab,4363 \
>          alias=pciex11ab,4364 \
>          alias=pciex11ab,4365 \
>          alias=pciex11ab,4366 \
>          alias=pciex11ab,4367 \
>          alias=pciex11ab,4368 \
>          alias=pciex11ab,4369 \
>          alias=pciex11ab,436a \
>          alias=pciex11ab,436b \
>          alias=pciex11ab,436c \
>          alias=pciex11ab,436d \
>          alias=pciex11ab,4370 \
>          alias=pciex11ab,4380 \
>          alias=pciex11ab,4381 
>       file path=kernel/drv/$(ARCH64)/yge group=sys
> 
> 
> http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/uts/common/io/yge/yge.c
> 
>    1237 	    dev->d_hw_id > CHIP_ID_YUKON_UL_2) {
>    1275 		dev->d_clock = 156;	/* 156 Mhz */
> 
> http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/uts/common/io/yge/yge.h
> 
>    82 #define	DEVICEID_MRVL_4354	0X4354
>       #define	DEVICEID_MRVL_4355	0X4355
>       #define	DEVICEID_MRVL_4360	0x4360
>       #define	DEVICEID_MRVL_4361	0x4361
>       #define	DEVICEID_MRVL_4362	0x4362
>       #define	DEVICEID_MRVL_4363	0x4363
>       #define	DEVICEID_MRVL_4364	0x4364
>       #define	DEVICEID_MRVL_436A	0x436A
>       #define	DEVICEID_MRVL_436B	0x436B
>       #define	DEVICEID_MRVL_436C	0x436C
>       #define	DEVICEID_MRVL_436D	0x436D
>       #define	DEVICEID_MRVL_4370	0x4370
>       #define	DEVICEID_MRVL_4380	0x4380
>       #define	DEVICEID_MRVL_4381	0x4381
> 
> 
> Hopefully it is easy to make these patch changes and then run a quick test.
> 
> ~ Ken Mays
> 
> 
> 
> 
> 
> 
> 
> --- On Tue, 8/10/10, Garrett D'Amore <garrett at damore.org> wrote:
> 
> > From: Garrett D'Amore <garrett at damore.org>
> > Subject: Re: [illumos-Developer] Improved support added for Marvell Gigabit Ethernet controllers
> > To: "ken mays" <maybird1776 at yahoo.com>
> > Cc: developer at lists.illumos.org
> > Date: Tuesday, August 10, 2010, 12:14 PM
> > This is funny, because I've been
> > working on the same thing in parallel.
> > I'd made some progress, but was having trouble with
> > certain
> > initializations -- the device would work sometime, but not
> > always. 
> > 
> > Can I see your diffs.  As I have a very immediate need
> > for this, I can
> > test your code, and if it works I *will* integrate into
> > illumos
> > immediately.
> > 
> >     - Garrett
> > 
> > 
> > On Tue, 2010-08-10 at 09:01 -0700, ken mays wrote:
> > > Hello,
> > > 
> > > I worked on adding or improve support to the yge
> > device driver for the
> > > following Marvell Yukon PCI Express Ethernet
> > controllers:
> > > 
> > > Marvell Yukon II 88E8057
> > > Marvell Yukon Optima 88E8059 w/ AVB
> > > Marvell Yukon II 88E8062 dual port
> > > 
> > > The enhancements were added to ON snv_146
> > consolidation for possible illumos-gate inclusion.
> > > 
> > > A bug report was also filed to Oracle for official
> > enhancement review and support.
> > > 
> > > ~ Ken Mays
> > > 
> > > 
> > > 
> > >       
> > > 
> > > _______________________________________________
> > > Developer mailing list
> > > Developer at lists.illumos.org
> > > http://lists.illumos.org/m/listinfo/developer
> > 
> > 
> > 
> 
> 
>       





More information about the Developer mailing list