kern/128833: [bge] Network packets corrupted when bge card is
in 64-bit PCI slot
Aurélien Méré
freebsd at amc-os.com
Tue Nov 18 17:30:05 PST 2008
The following reply was made to PR kern/128833; it has been noted by GNATS.
From: =?iso-8859-1?B?QXVy6WxpZW4gTely6Q==?= <freebsd at amc-os.com>
To: "Marius Strobl" <marius at alchemy.franken.de>
Cc: <bug-followup at FreeBSD.org>
Subject: Re: kern/128833: [bge] Network packets corrupted when bge card is in 64-bit PCI slot
Date: Wed, 19 Nov 2008 02:27:43 +0100
Concerning the problem described by davidch@ , my chip is reported as a B5
revision (01050000), so it might not be the case here.
You're right, the M/B doesn't support PCI-X at all. As detailed on the
manual, the NB chipset (AMD762) provides support for 2x66 MHz 64-bit PCI 2.2
masters, and the SB chipset (AMD768) provides a secondary PCI 2.2 bridge
33MHz.
I tried the patch but it didn't solve the problem, whilst the BGE_FLAG_PCIX
was no longer in the flags, which seems much more correct anyway. At the end
of the initialization values are these, as planned :
bge_flags = 0x0010180F (0x10100F | BGE_FLAG_64BIT) .
BGE_PCI_PCISTATE is unchanged
Note I forgot to mention the BGE_FLAG_RXALIGN_BUG (100000) and BGE_FLAG_TBI
(1) last time, as I tested before reset of the chip where these flags are
set.
----- Original Message -----
From: "Marius Strobl" <marius at alchemy.franken.de>
To: "Aurélien Méré" <freebsd at amc-os.com>
Cc: <bug-followup at FreeBSD.org>
Sent: Tuesday, November 18, 2008 11:46 PM
Subject: Re: kern/128833: [bge] Network packets corrupted when bge card is
in 64-bit PCI slot
> 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
>
More information about the freebsd-net
mailing list