Date: Tue, 16 Oct 2018 16:36:03 +0000 (UTC) From: Leandro Lupori <luporl@FreeBSD.org> To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r339382 - projects/power8_bringup_hacks/sys/dev/bge Message-ID: <201810161636.w9GGa3Nl001743@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: luporl Date: Tue Oct 16 16:36:02 2018 New Revision: 339382 URL: https://svnweb.freebsd.org/changeset/base/339382 Log: bge(4): limit DMA address to 2GB This is a temporary hack, to avoid POWER8 Broadcom NICs from becoming unusable after transferring a reasonable amount of data. The issue is the same as that of AHCI, where DMA addresses above 2GB do not work and causes PCI errors. Modified: projects/power8_bringup_hacks/sys/dev/bge/if_bge.c Modified: projects/power8_bringup_hacks/sys/dev/bge/if_bge.c ============================================================================== --- projects/power8_bringup_hacks/sys/dev/bge/if_bge.c Tue Oct 16 16:03:17 2018 (r339381) +++ projects/power8_bringup_hacks/sys/dev/bge/if_bge.c Tue Oct 16 16:36:02 2018 (r339382) @@ -134,6 +134,8 @@ MODULE_DEPEND(bge, miibus, 1, 1, 1); /* "device miibus" required. See GENERIC if you get errors here. */ #include "miibus_if.h" +#define BGE_BUS_SPACE_MAXADDR_32BIT 0x7FFFFFFFU + /* * Various supported device vendors/types and their names. Note: the * spec seems to indicate that the hardware still has Alteon's vendor @@ -3050,15 +3052,16 @@ bge_dma_alloc(struct bge_softc *sc) /* Create parent tag for buffers. */ if ((sc->bge_flags & BGE_FLAG_4G_BNDRY_BUG) != 0) { + lowaddr = BGE_BUS_SPACE_MAXADDR_32BIT; /* * XXX * watchdog timeout issue was observed on BCM5704 which * lives behind PCI-X bridge(e.g AMD 8131 PCI-X bridge). * Both limiting DMA address space to 32bits and flushing * mailbox write seem to address the issue. - */ if (sc->bge_pcixcap != 0) lowaddr = BUS_SPACE_MAXADDR_32BIT; + */ } error = bus_dma_tag_create(bus_get_dma_tag(sc->bge_dev), 1, 0, lowaddr, BUS_SPACE_MAXADDR, NULL, NULL, BUS_SPACE_MAXSIZE_32BIT, 0,
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201810161636.w9GGa3Nl001743>