Date: Sun, 13 Dec 1998 12:43:34 +0100 From: Stefan Esser <se@mi.uni-koeln.de> To: Didier Derny <didier@omnix.net>, hackers@FreeBSD.ORG Cc: Stefan Esser <se@mi.uni-koeln.de> Subject: Re: Adaptec ANA 6944A TX and/or PCI problem Message-ID: <19981213124334.B564@mi.uni-koeln.de> In-Reply-To: <Pine.BSF.3.96.981211093757.18463B-100000@omnix.net>; from Didier Derny on Fri, Dec 11, 1998 at 09:52:20AM %2B0100 References: <Pine.BSF.3.96.981211093757.18463B-100000@omnix.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On 1998-12-11 09:52 +0100, Didier Derny <didier@omnix.net> wrote: > I'm trying to use two Adaptec ANA 6944A TX (4 port) 10/100 BaseT board. > > - each board is working fine separately. > - both board are not working used simultanously > - Nothing special during the boot (dmesg seems ok) Please send me your dmesg output from a "-v" boot (verbose messages). > I made the following experience: > > ifconfig de0 inet 192.168.5.1 netmask 255.255.255.0 > ifconfig de4 inet 192.168.6.1 netmask 255.255.255.0 > > then I ping both networks simultaneously and got a message > telling me that the the ethernet / ip addresses were not > comming from the right source. > > ip from de0 with the ethernet address of de4 > > (ports were numbered from de0 to de3 for the first board > and from de4 to de7 for the second board) > > My guess: > > when the first board is initialized everything is ok, then when the > second board is initialized the io ports of the second board are allocated > at the same location than for the first board. This can be verified by looking at the map registers (address 0x10 to 0x24 in PCI config space, have to check which one is correct for the port map of the DEC Ethernet chip). But this information should also be provided by the verbose boot ... > I ran the adaptec diagnostics, he saw two boards effectively, > he saw the same io ports at the same adresses 0xc800, 0xc400... The boards can be distinguished in PCI config space (geographical addressing) no matter, what their map registers are set to. Did you try with memory mapped registers (kernel build option, see the driver sources, remove the definition of TULIP_IOMAPPED, the comment most probably applies to anxient PCI bridges ... > but I'm not sure if it's a relative or absolute address. > > The other possibility is a problem in the allocations of ports > in the if_de.c driver. > > It is sure that when trying to ping de0 alone, de4 is activated > > If it's a pci problem, is there any possibility to override the PCI > configuration to avoid this problem. While it is not really impossible to remap PCI devices, this is an ugly thing to do. Only the PCI BIOS knows about restrictions of the chip set or mainboard hardware, and it should have used that knowledge to assign valid addresses in the first place. (I.e. I'd rather not trust PCI BIOS services to return valid information for the kernel to fix things up, in such a case!) Regards, STefan To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19981213124334.B564>