1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-20 11:11:24 +00:00

BGE_FLAG_40BIT_BUG should be set before creating DMA tags.

Pointy hat to:  yongari
This commit is contained in:
Pyun YongHyeon 2009-11-24 17:46:58 +00:00
parent 6d60ecdc6c
commit fd4d32feb2
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=199761

View File

@ -2664,6 +2664,13 @@ bge_attach(device_t dev)
sc->bge_flags |= BGE_FLAG_PCIX;
}
/*
* The 40bit DMA bug applies to the 5714/5715 controllers and is
* not actually a MAC controller bug but an issue with the embedded
* PCIe to PCI-X bridge in the device. Use 40bit DMA workaround.
*/
if (BGE_IS_5714_FAMILY(sc) && (sc->bge_flags & BGE_FLAG_PCIX))
sc->bge_flags |= BGE_FLAG_40BIT_BUG;
/*
* Allocate the interrupt, using MSI if possible. These devices
* support 8 MSI messages, but only the first one is used in
@ -2798,13 +2805,6 @@ bge_attach(device_t dev)
#ifdef DEVICE_POLLING
ifp->if_capabilities |= IFCAP_POLLING;
#endif
/*
* The 40bit DMA bug applies to the 5714/5715 controllers and is
* not actually a MAC controller bug but an issue with the embedded
* PCIe to PCI-X bridge in the device. Use 40bit DMA workaround.
*/
if (BGE_IS_5714_FAMILY(sc) && (sc->bge_flags & BGE_FLAG_PCIX))
sc->bge_flags |= BGE_FLAG_40BIT_BUG;
/*
* 5700 B0 chips do not support checksumming correctly due