More issues
Bogdan Costescu
Bogdan.Costescu@IWR.Uni-Heidelberg.De
Fri Apr 28 12:07:40 2000
Hi,
I discovered some other issues that are present in the current driver. In
the order of importance (IMO):
1. After changing fullDuplexEnable bit in Media Control register (page
179; page 198 in B docs), TxReset and RxReset must be issued. While in
vortex_open() this is done, in vortex_timer() it's not!
I assume that at present if such situation occur, either the card is able
to continue without the resets (but violating the specs) or some error
condition is triggered so that the routine for handling the error does a
reset. Anyway, this should not happen very often, more probable when
vortex_timer() is called the first time after driver init.
2. The driver has some defines in 'enum Window1' (aprox. line 376) which
assume that the window 1 is always mapped at offsets 0x10-0x1F (as written
in the driver this is true for vortex). 90xX cards do not obey this rule.
3. RxError and RxStatus (from Window 1) do not exist for rev. B & C.
RxStatus is still used in boomerang_rx() - although only for debugging.
4. At the beginning of vortex_interrupt() there is a line:
latency = inb(ioaddr + Timer);
This variable is only used for debugging in the next printk, so it wastes
cycles when debuging is not enabled. Should be moved inside the 'if'.
5. We acknowledge intRequest at the end of the big 'do' loop in
vortex_interrupt(). While this is harmless, it should not be necessary as
it's only set by execution of RequestInterrupt command or expiration of
the Countdown register (neither used by the driver, AFAIS).
After more than 24h of torture with parallel jobs, ttcp and cross flooding
pings with diff. packet sizes, the computers are still up. Good sign!
I notice however some Rx overruns, about 1800 for 1000Mpacket.
Sincerely,
Bogdan Costescu
IWR - Interdisziplinaeres Zentrum fuer Wissenschaftliches Rechnen
Universitaet Heidelberg, INF 368, D-69120 Heidelberg, GERMANY
Telephone: +49 6221 54 8869, Telefax: +49 6221 54 8868
E-mail: Bogdan.Costescu@IWR.Uni-Heidelberg.De
-------------------------------------------------------------------
To unsubscribe send a message body containing "unsubscribe"
to linux-vortex-request@beowulf.org