Date: Tue, 18 Nov 2008 22:50:04 GMT From: Marius Strobl <marius@alchemy.franken.de> To: freebsd-net@FreeBSD.org Subject: Re: kern/128833: [bge] Network packets corrupted when bge card is in 64-bit PCI slot Message-ID: <200811182250.mAIMo4gb028171@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/128833; it has been noted by GNATS. From: Marius Strobl <marius@alchemy.franken.de> To: =?unknown-8bit?Q?Aur=E9lien_M=E9r=E9?= <freebsd@amc-os.com> Cc: bug-followup@FreeBSD.org Subject: Re: kern/128833: [bge] Network packets corrupted when bge card is in 64-bit PCI slot Date: Tue, 18 Nov 2008 23:46:21 +0100 On Mon, Nov 17, 2008 at 02:37:51AM +0100, Aurlien Mr wrote: > Hi > As first check, when device is being attached, here are the values reported > and the diff : > > in 32 bit slot : > BGE_PCI_PCISTATE = 0x96 (0x86 | BGE_PCISTATE_32BIT_BUS) > bge_flags = 0x120E (0x100E | BGE_FLAG_PCIX) > > in 64 bit slot : > BGE_PCI_PCISTATE = 0x8E (0x86 | BGE_PCISTATE_PCI_BUSSPEED) > bge_flags = 0x1A0E (0x100E | BGE_FLAG_PCIX | BGE_FLAG_64BIT) > > Seems logical so far, I'll try to look further. Apart from the problem described by davidch@ (I'm not sure you actually have a BCM5701 A3 though, at least bge(4) doesn't seem to be aware of that revision) the BGE_PCI_PCISTATE and bge_flags pairs you reported don't match though; according to BGE_PCI_PCISTATE the card isn't in a PCI-X slot in either case (BGE_PCISTATE_PCI_BUSMODE is always set, which means PCI) and AFAICT your motherboard chipset also doesn't support PCI-X. However, as you noted BGE_FLAG_PCIX is set for whatever reason in both cases, which leads to some inappropriate initialization of the controller. As a quick test could you please check whether replacing the "#if __FreeBSD_version > 602101" in the driver with an "#if 0" makes any difference to your problem? Marius
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200811182250.mAIMo4gb028171>