From c6831b0bcb95260ec12dc38e26a836ced84d618b Mon Sep 17 00:00:00 2001 From: Andrew Rybchenko <arybchik@FreeBSD.org> Date: Fri, 30 Nov 2018 07:10:43 +0000 Subject: [PATCH] sfxge(4): support Medford2 Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18286 --- share/man/man4/sfxge.4 | 6 +++--- sys/dev/sfxge/common/efsys.h | 2 +- sys/dev/sfxge/sfxge.c | 5 +++++ 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/share/man/man4/sfxge.4 b/share/man/man4/sfxge.4 index 589129792ceb..0c6ac4f8db22 100644 --- a/share/man/man4/sfxge.4 +++ b/share/man/man4/sfxge.4 @@ -52,7 +52,7 @@ sfxge_load="YES" The .Nm driver provides support for 10Gb Ethernet adapters based on -Solarflare SFC9000 family controllers. +Solarflare SFC9000 and XtremeScale X2 family controllers. The driver supports jumbo frames, transmit/receive checksum offload, TCP Segmentation Offload (TSO), Large Receive Offload (LRO), VLAN checksum offload, VLAN TSO, @@ -163,8 +163,8 @@ Period in milliseconds to refresh interface statistics from hardware. The accepted range is 0 to 65535, the default is 1000 (1 second). Use zero value to disable periodic statistics update. Supported on SFN8xxx series adapters with firmware v6.2.1.1033 and later and -SFN5xxx and SFN6xxx series adapters. -SFN7xxx series adapters and SFN8xxx series with earlier firmware use a +SFN5xxx, SFN6xxx and XtremeScale X2xxx series adapters. +SFN7xxx series adapters and sfN8xxx series with earlier firmware use a fixed 1000 milliseconds statistics update period. The period may also be changed after the driver is loaded using the sysctl .Va dev.sfxge.%d.stats_update_period_ms . diff --git a/sys/dev/sfxge/common/efsys.h b/sys/dev/sfxge/common/efsys.h index a552eb8077a0..0c1c84cbb468 100644 --- a/sys/dev/sfxge/common/efsys.h +++ b/sys/dev/sfxge/common/efsys.h @@ -202,7 +202,7 @@ sfxge_map_mbuf_fast(bus_dma_tag_t tag, bus_dmamap_t map, #define EFSYS_OPT_SIENA 1 #define EFSYS_OPT_HUNTINGTON 1 #define EFSYS_OPT_MEDFORD 1 -#define EFSYS_OPT_MEDFORD2 0 +#define EFSYS_OPT_MEDFORD2 1 #ifdef DEBUG #define EFSYS_OPT_CHECK_REG 1 #else diff --git a/sys/dev/sfxge/sfxge.c b/sys/dev/sfxge/sfxge.c index 5b7fa84c1125..20d29357b695 100644 --- a/sys/dev/sfxge/sfxge.c +++ b/sys/dev/sfxge/sfxge.c @@ -1182,6 +1182,11 @@ sfxge_probe(device_t dev) return (0); } + if (family == EFX_FAMILY_MEDFORD2) { + device_set_desc(dev, "Solarflare SFC9250 family"); + return (0); + } + DBGPRINT(dev, "impossible controller family %d", family); return (ENXIO); }