[vortex-bug] AUI connector with 3C905B-Combo, a workaround

Bogdan Costescu Bogdan.Costescu@IWR.Uni-Heidelberg.De
Wed, 23 Aug 2000 17:44:04 +0200 (CEST)


On 22 Aug 2000, Moritz Franosch wrote:

> Aug 22 21:10:57 star2 kernel: eth0: vortex_open() irq 5 media status 8080.
> Aug 22 21:10:57 star2 kernel: eth0: Media selection timer tick happened, 10Mbs AUI.
> Aug 22 21:10:57 star2 kernel: eth0: Media 10Mbs AUI is has no indication, 8808.

Media status 8808 indicates auiDisable, linkDetect and enableSQE. The
first item is obviously wrong, as we try to use the AUI port. The second
is OK (as linkBeatEnable is cleared) and the third is desired for AUI
operation.
Media status should read 0808 in this case, as the auiDisable bit should
not be set. The lines which impose these media settings are around middle
of vortex_open():

	if (dev->if_port != XCVR_NWAY) {
		EL3WINDOW(4);
		outw((inw(ioaddr + Wn4_Media) & ~(Media_10TP|Media_SQE)) |
			 media_tbl[dev->if_port].media_bits, ioaddr + Wn4_Media);
	}

Please try to change these into:

	if (dev->if_port != XCVR_NWAY) {
		EL3WINDOW(4);
		outw((inw(ioaddr + Wn4_Media) & ~(Media_10TP|Media_SQE|0x8000)) |
			 media_tbl[dev->if_port].media_bits, ioaddr + Wn4_Media);
	}

and tell us if it works (and provide the same "options=1 debug=2" output 
plus vortex-diag -a). I'll then make a better patch (which will define
another Media_ constant to be associated with AUI operation).

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