Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 24 May 96 19:34:03 cdt
From:      mevans@candle.com (Michael T. Evans)
To:        gtc@aloft.att.com
Cc:        bugs@freebsd.org
Subject:   Re:  3c509 transmit hang
Message-ID:  <199605250035.AA09802@phobos.Candle.Com>

next in thread | raw e-mail | index | archive | help
Gary,

	To my horror, I just realized that I typed the wrong subject
line in the original post.  The driver I modified was for the
3c590, not the 3c509.  The good news is that the basic
operation appears to be similar, and yes the defect IS also in
the 3c509 driver i386/isa/if_ep.c.  To prevent the hang, locate
the following line at or near line 702:

	outw(BASE + EP_W1_TX_PIO_WR_1, len);

	... and change it to:

	outw(BASE + EP_W1_TX_PIO_WR_1, len | 0x8000);

Mike

On Fri, 24 May 96 20:21:22 EDT you wrote:

>
>Mike,
>
>>	Discovered a defect in pci/if_vx.c leading to a permanent hang
>>when transmitting large quantities of data (such as ftp).  The
>>flag requesting a transmit-complete interrupt is not being set
>>in the output packet prefix.  According to the 3com 3c5x9
>>technical reference, bit 15 of the length word is the "request
>>transmit-complete flag".  Adding the bit to the outw sending the
>>length prefix corrects the hang condition.
>
>Do you know/could you check  if this bug is also in the non-PCI (ISA/EISA)
>3c5x9 driver?  Sorry I don't recall the file name offhand, and I'm not at
>my system now.
>
>>	I'd send in a diff, but I've migrated this driver backward to
>>2.1, so it would regress other changes in current.  Please let
>>me know if there's a more suitable way to provide this
>>information.
>
>If this bug *is* in the ISA/EISA 3c5x9 driver, I run 2.1R, and would
>appreciate receiving a diff for the fix against the 2.1R source code,
>if you have it.
>
>Thanks,
>Gary
>
>Gary Corcoran
>gtc@aloft.att.com
>
>
>




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