Help needed: 3Com Ethernet Controll

richards at uiucdcsb.CS.UIUC.EDU richards at uiucdcsb.CS.UIUC.EDU
Tue Feb 25 14:36:00 AEST 1986


It looks like your configuration of the board is correct, but I suspect
that one of your other Unibus drivers are requesting a dedicated part
of the Unibus Map before the 3com board is initialized, preventing it
from properly acquiring the lowest part of the Unibus address space.

The 3com board has dual-ported Unibus memory instead of a DMA transfer
mechanism for the host to access received and transmitted data.  For the
Vax 780 family to use this memory, it must disable the Unibus map registers
for the Unibus address range that covers the memory.  Due to the design 
of the Unibus map (at least on the 780), you only can disable a consecutive
block of Unibus map registers starting at Unibus address 0 and going up.
Hence the requirement that the 3com memory be set to address 0.

But if another device requests dedicated access to the Unibus ahead of the
3com in the autoconfigure sequence (as I suspect the ra disks do for faster
UBA access), addresses from 0 to some number will be marked in use, and
when it comes time to disable the map and allocate the memory window,
the Unibus management routines will complain because it cannot get the
exact address range needed for the 3com board.

The Fix?  Put the "device ec0 ..." entry *before* any other unibus devices
in your configuration file, rebuild the kernel, and try it.  Devices are
probed and attached in the order they appear in the configuration file.

Paul Richards	University of Illinois at Urbana-Champaign, Dept of Comp Sci
	UUCP:	{pur-ee,convex,inhp4}!uiucdcs!richards
	ARPA:	richards at b.cs.uiuc.edu
	CSNET:	richards%uiuc at csnet-relay
	MABELL:	(217) 333-3536



More information about the Comp.unix.wizards mailing list