aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/drivers/net/ethernet/stmicro/stmmac/Kconfig
diff options
context:
space:
mode:
authorJose Abreu <Jose.Abreu@synopsys.com>2019-07-09 10:03:00 +0200
committerDavid S. Miller <davem@davemloft.net>2019-07-09 12:20:08 -0700
commit2af6106ae949651d529c8c3f0734c3a7babd0d4b (patch)
treeda32c00b9208e27b5f109d917e4c0a0ab9a9d8dd /drivers/net/ethernet/stmicro/stmmac/Kconfig
parentnet: stmmac: Fix descriptors address being in > 32 bits address space (diff)
downloadwireguard-linux-2af6106ae949651d529c8c3f0734c3a7babd0d4b.tar.xz
wireguard-linux-2af6106ae949651d529c8c3f0734c3a7babd0d4b.zip
net: stmmac: Introducing support for Page Pool
Mapping and unmapping DMA region is an high bottleneck in stmmac driver, specially in the RX path. This commit introduces support for Page Pool API and uses it in all RX queues. With this change, we get more stable troughput and some increase of banwidth with iperf: - MAC1000 - 950 Mbps - XGMAC: 9.22 Gbps Changes from v3: - Use page_pool_destroy() (Ilias) Changes from v2: - Uncoditionally call page_pool_free() (Jesper) Changes from v1: - Use page_pool_get_dma_addr() (Jesper) - Add a comment (Jesper) - Add page_pool_free() call (Jesper) - Reintroduce sync_single_for_device (Arnd / Ilias) Signed-off-by: Jose Abreu <joabreu@synopsys.com> Acked-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/stmicro/stmmac/Kconfig')
-rw-r--r--drivers/net/ethernet/stmicro/stmmac/Kconfig1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/ethernet/stmicro/stmmac/Kconfig b/drivers/net/ethernet/stmicro/stmmac/Kconfig
index 943189dcccb1..2325b40dff6e 100644
--- a/drivers/net/ethernet/stmicro/stmmac/Kconfig
+++ b/drivers/net/ethernet/stmicro/stmmac/Kconfig
@@ -3,6 +3,7 @@ config STMMAC_ETH
tristate "STMicroelectronics Multi-Gigabit Ethernet driver"
depends on HAS_IOMEM && HAS_DMA
select MII
+ select PAGE_POOL
select PHYLINK
select CRC32
imply PTP_1588_CLOCK