Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 21 Feb 2017 02:19:19 +0000 (UTC)
From:      Sepherosa Ziehau <sephe@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org
Subject:   svn commit: r314005 - in stable/11: share/man/man4 sys/dev/alc sys/dev/pci
Message-ID:  <201702210219.v1L2JJto011830@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: sephe
Date: Tue Feb 21 02:19:19 2017
New Revision: 314005
URL: https://svnweb.freebsd.org/changeset/base/314005

Log:
  MFC 312250
  
      alc: Add Killer E2500 support
  
      Reviewed by:    jhb, yongari
      Sponsored by:   Microsoft
      Differential Revision:  https://reviews.freebsd.org/D9058

Modified:
  stable/11/share/man/man4/alc.4
  stable/11/sys/dev/alc/if_alc.c
  stable/11/sys/dev/alc/if_alcreg.h
  stable/11/sys/dev/pci/pci.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/share/man/man4/alc.4
==============================================================================
--- stable/11/share/man/man4/alc.4	Tue Feb 21 02:18:45 2017	(r314004)
+++ stable/11/share/man/man4/alc.4	Tue Feb 21 02:19:19 2017	(r314005)
@@ -124,6 +124,8 @@ Atheros AR8172 PCI Express Fast Ethernet
 Killer E2200 Gigabit Ethernet controller
 .It
 Killer E2400 Gigabit Ethernet controller
+.It
+Killer E2500 Gigabit Ethernet controller
 .El
 .Sh LOADER TUNABLES
 Tunables can be set at the

Modified: stable/11/sys/dev/alc/if_alc.c
==============================================================================
--- stable/11/sys/dev/alc/if_alc.c	Tue Feb 21 02:18:45 2017	(r314004)
+++ stable/11/sys/dev/alc/if_alc.c	Tue Feb 21 02:19:19 2017	(r314005)
@@ -123,6 +123,8 @@ static struct alc_ident alc_ident_table[
 		"Killer E2200 Gigabit Ethernet" },
 	{ VENDORID_ATHEROS, DEVICEID_ATHEROS_E2400, 9 * 1024,
 		"Killer E2400 Gigabit Ethernet" },
+	{ VENDORID_ATHEROS, DEVICEID_ATHEROS_E2500, 9 * 1024,
+		"Killer E2500 Gigabit Ethernet" },
 	{ 0, 0, 0, NULL}
 };
 
@@ -1083,6 +1085,7 @@ alc_phy_down(struct alc_softc *sc)
 	case DEVICEID_ATHEROS_AR8161:
 	case DEVICEID_ATHEROS_E2200:
 	case DEVICEID_ATHEROS_E2400:
+	case DEVICEID_ATHEROS_E2500:
 	case DEVICEID_ATHEROS_AR8162:
 	case DEVICEID_ATHEROS_AR8171:
 	case DEVICEID_ATHEROS_AR8172:
@@ -1402,6 +1405,7 @@ alc_attach(device_t dev)
 	switch (sc->alc_ident->deviceid) {
 	case DEVICEID_ATHEROS_E2200:
 	case DEVICEID_ATHEROS_E2400:
+	case DEVICEID_ATHEROS_E2500:
 		sc->alc_flags |= ALC_FLAG_E2X00;
 		/* FALLTHROUGH */
 	case DEVICEID_ATHEROS_AR8161:
@@ -1480,7 +1484,8 @@ alc_attach(device_t dev)
 		if (alc_dma_burst[sc->alc_dma_wr_burst] > 1024)
 			sc->alc_dma_wr_burst = 3;
 		/*
-		 * Force maximum payload size to 128 bytes for E2200/E2400.
+		 * Force maximum payload size to 128 bytes for
+		 * E2200/E2400/E2500.
 		 * Otherwise it triggers DMA write error.
 		 */
 		if ((sc->alc_flags & ALC_FLAG_E2X00) != 0)

Modified: stable/11/sys/dev/alc/if_alcreg.h
==============================================================================
--- stable/11/sys/dev/alc/if_alcreg.h	Tue Feb 21 02:18:45 2017	(r314004)
+++ stable/11/sys/dev/alc/if_alcreg.h	Tue Feb 21 02:19:19 2017	(r314005)
@@ -50,6 +50,7 @@
 #define	DEVICEID_ATHEROS_AR8172		0x10A0
 #define	DEVICEID_ATHEROS_E2200		0xE091
 #define	DEVICEID_ATHEROS_E2400		0xE0A1
+#define	DEVICEID_ATHEROS_E2500		0xE0B1
 
 #define	ATHEROS_AR8152_B_V10		0xC0
 #define	ATHEROS_AR8152_B_V11		0xC1

Modified: stable/11/sys/dev/pci/pci.c
==============================================================================
--- stable/11/sys/dev/pci/pci.c	Tue Feb 21 02:18:45 2017	(r314004)
+++ stable/11/sys/dev/pci/pci.c	Tue Feb 21 02:19:19 2017	(r314005)
@@ -281,13 +281,14 @@ static const struct pci_quirk pci_quirks
 	{ 0x43851002, PCI_QUIRK_UNMAP_REG,	0x14,	0 },
 
 	/*
-	 * Atheros AR8161/AR8162/E2200/E2400 Ethernet controllers have a
-	 * bug that MSI interrupt does not assert if PCIM_CMD_INTxDIS bit
+	 * Atheros AR8161/AR8162/E2200/E2400/E2500 Ethernet controllers have
+	 * a bug that MSI interrupt does not assert if PCIM_CMD_INTxDIS bit
 	 * of the command register is set.
 	 */
 	{ 0x10911969, PCI_QUIRK_MSI_INTX_BUG,	0,	0 },
 	{ 0xE0911969, PCI_QUIRK_MSI_INTX_BUG,	0,	0 },
 	{ 0xE0A11969, PCI_QUIRK_MSI_INTX_BUG,	0,	0 },
+	{ 0xE0B11969, PCI_QUIRK_MSI_INTX_BUG,	0,	0 },
 	{ 0x10901969, PCI_QUIRK_MSI_INTX_BUG,	0,	0 },
 
 	/*



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201702210219.v1L2JJto011830>