Module Name:    src
Committed By:   msaitoh
Date:           Tue Jul  9 08:46:59 UTC 2019

Modified Files:
        src/sys/arch/powerpc/booke/dev: pq3etsec.c
        src/sys/arch/x86/pci: if_vmx.c
        src/sys/dev/hyperv: if_hvn.c
        src/sys/dev/ic: i82557.c
        src/sys/dev/pci: if_age.c if_alc.c if_ale.c if_bge.c if_bnx.c if_jme.c
            if_nfe.c if_sip.c if_stge.c if_ti.c if_txp.c if_vge.c if_wm.c
        src/sys/net: if_vlan.c

Log Message:
 Don't automatically set ec_capenable's ETHERCAP_VLAN_HWTAGGING bit in
vlan_config() to make it user-controllable. Instead, set the bit in
xxx_attach().


To generate a diff of this commit:
cvs rdiff -u -r1.45 -r1.46 src/sys/arch/powerpc/booke/dev/pq3etsec.c
cvs rdiff -u -r1.29 -r1.30 src/sys/arch/x86/pci/if_vmx.c
cvs rdiff -u -r1.3 -r1.4 src/sys/dev/hyperv/if_hvn.c
cvs rdiff -u -r1.153 -r1.154 src/sys/dev/ic/i82557.c
cvs rdiff -u -r1.59 -r1.60 src/sys/dev/pci/if_age.c
cvs rdiff -u -r1.37 -r1.38 src/sys/dev/pci/if_alc.c
cvs rdiff -u -r1.32 -r1.33 src/sys/dev/pci/if_ale.c
cvs rdiff -u -r1.334 -r1.335 src/sys/dev/pci/if_bge.c
cvs rdiff -u -r1.85 -r1.86 src/sys/dev/pci/if_bnx.c
cvs rdiff -u -r1.43 -r1.44 src/sys/dev/pci/if_jme.c
cvs rdiff -u -r1.70 -r1.71 src/sys/dev/pci/if_nfe.c
cvs rdiff -u -r1.173 -r1.174 src/sys/dev/pci/if_sip.c
cvs rdiff -u -r1.69 -r1.70 src/sys/dev/pci/if_stge.c
cvs rdiff -u -r1.111 -r1.112 src/sys/dev/pci/if_ti.c
cvs rdiff -u -r1.58 -r1.59 src/sys/dev/pci/if_txp.c
cvs rdiff -u -r1.72 -r1.73 src/sys/dev/pci/if_vge.c
cvs rdiff -u -r1.641 -r1.642 src/sys/dev/pci/if_wm.c
cvs rdiff -u -r1.138 -r1.139 src/sys/net/if_vlan.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/powerpc/booke/dev/pq3etsec.c
diff -u src/sys/arch/powerpc/booke/dev/pq3etsec.c:1.45 src/sys/arch/powerpc/booke/dev/pq3etsec.c:1.46
--- src/sys/arch/powerpc/booke/dev/pq3etsec.c:1.45	Tue May 28 07:41:48 2019
+++ src/sys/arch/powerpc/booke/dev/pq3etsec.c	Tue Jul  9 08:46:58 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: pq3etsec.c,v 1.45 2019/05/28 07:41:48 msaitoh Exp $	*/
+/*	$NetBSD: pq3etsec.c,v 1.46 2019/07/09 08:46:58 msaitoh Exp $	*/
 /*-
  * Copyright (c) 2010, 2011 The NetBSD Foundation, Inc.
  * All rights reserved.
@@ -41,7 +41,7 @@
 
 #include <sys/cdefs.h>
 
-__KERNEL_RCSID(0, "$NetBSD: pq3etsec.c,v 1.45 2019/05/28 07:41:48 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pq3etsec.c,v 1.46 2019/07/09 08:46:58 msaitoh Exp $");
 
 #include <sys/param.h>
 #include <sys/cpu.h>
@@ -780,6 +780,7 @@ pq3etsec_attach(device_t parent, device_
 
 	ec->ec_capabilities = ETHERCAP_VLAN_MTU | ETHERCAP_VLAN_HWTAGGING
 	    | ETHERCAP_JUMBO_MTU;
+	ec->ec_capenable = ETHERCAP_VLAN_HWTAGGING;
 
 	strlcpy(ifp->if_xname, xname, IFNAMSIZ);
 	ifp->if_softc = sc;

Index: src/sys/arch/x86/pci/if_vmx.c
diff -u src/sys/arch/x86/pci/if_vmx.c:1.29 src/sys/arch/x86/pci/if_vmx.c:1.30
--- src/sys/arch/x86/pci/if_vmx.c:1.29	Wed May 29 10:07:29 2019
+++ src/sys/arch/x86/pci/if_vmx.c	Tue Jul  9 08:46:58 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_vmx.c,v 1.29 2019/05/29 10:07:29 msaitoh Exp $	*/
+/*	$NetBSD: if_vmx.c,v 1.30 2019/07/09 08:46:58 msaitoh Exp $	*/
 /*	$OpenBSD: if_vmx.c,v 1.16 2014/01/22 06:04:17 brad Exp $	*/
 
 /*
@@ -19,7 +19,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_vmx.c,v 1.29 2019/05/29 10:07:29 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_vmx.c,v 1.30 2019/07/09 08:46:58 msaitoh Exp $");
 
 #include <sys/param.h>
 #include <sys/cpu.h>
@@ -1721,7 +1721,9 @@ vmxnet3_setup_interface(struct vmxnet3_s
 
 	sc->vmx_ethercom.ec_if.if_capabilities |= IFCAP_TSOv4 | IFCAP_TSOv6;
 
-	sc->vmx_ethercom.ec_capabilities |= ETHERCAP_VLAN_MTU | ETHERCAP_VLAN_HWTAGGING;
+	sc->vmx_ethercom.ec_capabilities |=
+	    ETHERCAP_VLAN_MTU | ETHERCAP_VLAN_HWTAGGING;
+	sc->vmx_ethercom.ec_capenable |= ETHERCAP_VLAN_HWTAGGING;
 
 	IFQ_SET_MAXLEN(&ifp->if_snd, sc->vmx_ntxdescs);
 	IFQ_SET_READY(&ifp->if_snd);

Index: src/sys/dev/hyperv/if_hvn.c
diff -u src/sys/dev/hyperv/if_hvn.c:1.3 src/sys/dev/hyperv/if_hvn.c:1.4
--- src/sys/dev/hyperv/if_hvn.c:1.3	Wed May 29 10:07:29 2019
+++ src/sys/dev/hyperv/if_hvn.c	Tue Jul  9 08:46:58 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_hvn.c,v 1.3 2019/05/29 10:07:29 msaitoh Exp $	*/
+/*	$NetBSD: if_hvn.c,v 1.4 2019/07/09 08:46:58 msaitoh Exp $	*/
 /*	$OpenBSD: if_hvn.c,v 1.39 2018/03/11 14:31:34 mikeb Exp $	*/
 
 /*-
@@ -35,7 +35,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_hvn.c,v 1.3 2019/05/29 10:07:29 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_hvn.c,v 1.4 2019/07/09 08:46:58 msaitoh Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_inet.h"
@@ -284,6 +284,7 @@ hvn_attach(device_t parent, device_t sel
 	if (sc->sc_proto >= HVN_NVS_PROTO_VERSION_2) {
 		sc->sc_ec.ec_capabilities |= ETHERCAP_VLAN_HWTAGGING;
 		sc->sc_ec.ec_capabilities |= ETHERCAP_VLAN_MTU;
+		sc->sc_ec.ec_capenable |= ETHERCAP_VLAN_HWTAGGING;
 	}
 
 	IFQ_SET_MAXLEN(&ifp->if_snd, HVN_TX_DESC - 1);

Index: src/sys/dev/ic/i82557.c
diff -u src/sys/dev/ic/i82557.c:1.153 src/sys/dev/ic/i82557.c:1.154
--- src/sys/dev/ic/i82557.c:1.153	Tue May 28 07:41:48 2019
+++ src/sys/dev/ic/i82557.c	Tue Jul  9 08:46:58 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: i82557.c,v 1.153 2019/05/28 07:41:48 msaitoh Exp $	*/
+/*	$NetBSD: i82557.c,v 1.154 2019/07/09 08:46:58 msaitoh Exp $	*/
 
 /*-
  * Copyright (c) 1997, 1998, 1999, 2001, 2002 The NetBSD Foundation, Inc.
@@ -66,7 +66,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: i82557.c,v 1.153 2019/05/28 07:41:48 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: i82557.c,v 1.154 2019/07/09 08:46:58 msaitoh Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -392,6 +392,7 @@ fxp_attach(struct fxp_softc *sc)
 		    IFCAP_CSUM_TCPv4_Tx | IFCAP_CSUM_TCPv4_Rx |
 		    IFCAP_CSUM_UDPv4_Tx | IFCAP_CSUM_UDPv4_Rx;
 		sc->sc_ethercom.ec_capabilities |= ETHERCAP_VLAN_HWTAGGING;
+		sc->sc_ethercom.ec_capenable |= ETHERCAP_VLAN_HWTAGGING;
 	} else if (sc->sc_flags & FXPF_82559_RXCSUM) {
 		ifp->if_capabilities =
 		    IFCAP_CSUM_TCPv4_Rx |

Index: src/sys/dev/pci/if_age.c
diff -u src/sys/dev/pci/if_age.c:1.59 src/sys/dev/pci/if_age.c:1.60
--- src/sys/dev/pci/if_age.c:1.59	Tue May 28 07:41:49 2019
+++ src/sys/dev/pci/if_age.c	Tue Jul  9 08:46:58 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_age.c,v 1.59 2019/05/28 07:41:49 msaitoh Exp $ */
+/*	$NetBSD: if_age.c,v 1.60 2019/07/09 08:46:58 msaitoh Exp $ */
 /*	$OpenBSD: if_age.c,v 1.1 2009/01/16 05:00:34 kevlo Exp $	*/
 
 /*-
@@ -31,7 +31,7 @@
 /* Driver for Attansic Technology Corp. L1 Gigabit Ethernet. */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_age.c,v 1.59 2019/05/28 07:41:49 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_age.c,v 1.60 2019/07/09 08:46:58 msaitoh Exp $");
 
 #include "vlan.h"
 
@@ -262,6 +262,7 @@ age_attach(device_t parent, device_t sel
 
 #if NVLAN > 0
 	sc->sc_ec.ec_capabilities |= ETHERCAP_VLAN_HWTAGGING;
+	sc->sc_ec.ec_capenable |= ETHERCAP_VLAN_HWTAGGING;
 #endif
 
 	/* Set up MII bus. */

Index: src/sys/dev/pci/if_alc.c
diff -u src/sys/dev/pci/if_alc.c:1.37 src/sys/dev/pci/if_alc.c:1.38
--- src/sys/dev/pci/if_alc.c:1.37	Tue May 28 07:41:49 2019
+++ src/sys/dev/pci/if_alc.c	Tue Jul  9 08:46:58 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_alc.c,v 1.37 2019/05/28 07:41:49 msaitoh Exp $	*/
+/*	$NetBSD: if_alc.c,v 1.38 2019/07/09 08:46:58 msaitoh Exp $	*/
 /*	$OpenBSD: if_alc.c,v 1.1 2009/08/08 09:31:13 kevlo Exp $	*/
 /*-
  * Copyright (c) 2009, Pyun YongHyeon <yong...@freebsd.org>
@@ -1441,6 +1441,7 @@ alc_attach(device_t parent, device_t sel
 
 #if NVLAN > 0
 	sc->sc_ec.ec_capabilities |= ETHERCAP_VLAN_HWTAGGING;
+	sc->sc_ec.ec_capenable |= ETHERCAP_VLAN_HWTAGGING;
 #endif
 
 	/*

Index: src/sys/dev/pci/if_ale.c
diff -u src/sys/dev/pci/if_ale.c:1.32 src/sys/dev/pci/if_ale.c:1.33
--- src/sys/dev/pci/if_ale.c:1.32	Tue May 28 09:24:33 2019
+++ src/sys/dev/pci/if_ale.c	Tue Jul  9 08:46:59 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_ale.c,v 1.32 2019/05/28 09:24:33 msaitoh Exp $	*/
+/*	$NetBSD: if_ale.c,v 1.33 2019/07/09 08:46:59 msaitoh Exp $	*/
 
 /*-
  * Copyright (c) 2008, Pyun YongHyeon <yong...@freebsd.org>
@@ -32,7 +32,7 @@
 /* Driver for Atheros AR8121/AR8113/AR8114 PCIe Ethernet. */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_ale.c,v 1.32 2019/05/28 09:24:33 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_ale.c,v 1.33 2019/07/09 08:46:59 msaitoh Exp $");
 
 #include "vlan.h"
 
@@ -553,6 +553,7 @@ ale_attach(device_t parent, device_t sel
 
 #if NVLAN > 0
 	sc->sc_ec.ec_capabilities |= ETHERCAP_VLAN_HWTAGGING;
+	sc->sc_ec.ec_capenable |= ETHERCAP_VLAN_HWTAGGING;
 #endif
 
 	/* Set up MII bus. */

Index: src/sys/dev/pci/if_bge.c
diff -u src/sys/dev/pci/if_bge.c:1.334 src/sys/dev/pci/if_bge.c:1.335
--- src/sys/dev/pci/if_bge.c:1.334	Wed May 29 10:07:29 2019
+++ src/sys/dev/pci/if_bge.c	Tue Jul  9 08:46:58 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_bge.c,v 1.334 2019/05/29 10:07:29 msaitoh Exp $	*/
+/*	$NetBSD: if_bge.c,v 1.335 2019/07/09 08:46:58 msaitoh Exp $	*/
 
 /*
  * Copyright (c) 2001 Wind River Systems
@@ -79,7 +79,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_bge.c,v 1.334 2019/05/29 10:07:29 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_bge.c,v 1.335 2019/07/09 08:46:58 msaitoh Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -3832,6 +3832,7 @@ bge_attach(device_t parent, device_t sel
 #endif
 	sc->ethercom.ec_capabilities |=
 	    ETHERCAP_VLAN_HWTAGGING | ETHERCAP_VLAN_MTU;
+	sc->ethercom.ec_capenable |= ETHERCAP_VLAN_HWTAGGING;
 
 	if (sc->bge_flags & BGEF_TSO)
 		sc->ethercom.ec_if.if_capabilities |= IFCAP_TSOv4;

Index: src/sys/dev/pci/if_bnx.c
diff -u src/sys/dev/pci/if_bnx.c:1.85 src/sys/dev/pci/if_bnx.c:1.86
--- src/sys/dev/pci/if_bnx.c:1.85	Tue May 28 07:41:49 2019
+++ src/sys/dev/pci/if_bnx.c	Tue Jul  9 08:46:59 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_bnx.c,v 1.85 2019/05/28 07:41:49 msaitoh Exp $	*/
+/*	$NetBSD: if_bnx.c,v 1.86 2019/07/09 08:46:59 msaitoh Exp $	*/
 /*	$OpenBSD: if_bnx.c,v 1.101 2013/03/28 17:21:44 brad Exp $	*/
 
 /*-
@@ -35,7 +35,7 @@
 #if 0
 __FBSDID("$FreeBSD: src/sys/dev/bce/if_bce.c,v 1.3 2006/04/13 14:12:26 ru Exp $");
 #endif
-__KERNEL_RCSID(0, "$NetBSD: if_bnx.c,v 1.85 2019/05/28 07:41:49 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_bnx.c,v 1.86 2019/07/09 08:46:59 msaitoh Exp $");
 
 /*
  * The following controllers are supported by this driver:
@@ -863,6 +863,7 @@ bnx_attach(device_t parent, device_t sel
 
 	sc->bnx_ec.ec_capabilities |= ETHERCAP_JUMBO_MTU |
 	    ETHERCAP_VLAN_MTU | ETHERCAP_VLAN_HWTAGGING;
+	sc->bnx_ec.ec_capenable |= ETHERCAP_VLAN_HWTAGGING;
 
 	ifp->if_capabilities |=
 	    IFCAP_CSUM_IPv4_Tx | IFCAP_CSUM_IPv4_Rx |

Index: src/sys/dev/pci/if_jme.c
diff -u src/sys/dev/pci/if_jme.c:1.43 src/sys/dev/pci/if_jme.c:1.44
--- src/sys/dev/pci/if_jme.c:1.43	Tue May 28 07:41:49 2019
+++ src/sys/dev/pci/if_jme.c	Tue Jul  9 08:46:59 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_jme.c,v 1.43 2019/05/28 07:41:49 msaitoh Exp $	*/
+/*	$NetBSD: if_jme.c,v 1.44 2019/07/09 08:46:59 msaitoh Exp $	*/
 
 /*
  * Copyright (c) 2008 Manuel Bouyer.  All rights reserved.
@@ -58,7 +58,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_jme.c,v 1.43 2019/05/28 07:41:49 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_jme.c,v 1.44 2019/07/09 08:46:59 msaitoh Exp $");
 
 
 #include <sys/param.h>
@@ -473,6 +473,7 @@ jme_pci_attach(device_t parent, device_t
 	 */
 	sc->jme_ec.ec_capabilities |=
 	    ETHERCAP_VLAN_MTU | ETHERCAP_VLAN_HWTAGGING;
+	sc->jme_ec.ec_capenable |= ETHERCAP_VLAN_HWTAGGING;
 
 	if (sc->jme_flags & JME_FLAG_GIGA)
 		sc->jme_ec.ec_capabilities |= ETHERCAP_JUMBO_MTU;

Index: src/sys/dev/pci/if_nfe.c
diff -u src/sys/dev/pci/if_nfe.c:1.70 src/sys/dev/pci/if_nfe.c:1.71
--- src/sys/dev/pci/if_nfe.c:1.70	Tue May 28 07:41:49 2019
+++ src/sys/dev/pci/if_nfe.c	Tue Jul  9 08:46:59 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_nfe.c,v 1.70 2019/05/28 07:41:49 msaitoh Exp $	*/
+/*	$NetBSD: if_nfe.c,v 1.71 2019/07/09 08:46:59 msaitoh Exp $	*/
 /*	$OpenBSD: if_nfe.c,v 1.77 2008/02/05 16:52:50 brad Exp $	*/
 
 /*-
@@ -21,7 +21,7 @@
 /* Driver for NVIDIA nForce MCP Fast Ethernet and Gigabit Ethernet */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_nfe.c,v 1.70 2019/05/28 07:41:49 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_nfe.c,v 1.71 2019/07/09 08:46:59 msaitoh Exp $");
 
 #include "opt_inet.h"
 #include "vlan.h"
@@ -380,9 +380,11 @@ nfe_attach(device_t parent, device_t sel
 		sc->sc_ethercom.ec_capabilities |= ETHERCAP_JUMBO_MTU;
 
 #if NVLAN > 0
-	if (sc->sc_flags & NFE_HW_VLAN)
+	if (sc->sc_flags & NFE_HW_VLAN) {
 		sc->sc_ethercom.ec_capabilities |=
 			ETHERCAP_VLAN_HWTAGGING | ETHERCAP_VLAN_MTU;
+		sc->sc_ethercom.ec_capenable |= ETHERCAP_VLAN_HWTAGGING;
+	}
 #endif
 	if (sc->sc_flags & NFE_HW_CSUM) {
 		ifp->if_capabilities |=

Index: src/sys/dev/pci/if_sip.c
diff -u src/sys/dev/pci/if_sip.c:1.173 src/sys/dev/pci/if_sip.c:1.174
--- src/sys/dev/pci/if_sip.c:1.173	Tue May 28 07:41:49 2019
+++ src/sys/dev/pci/if_sip.c	Tue Jul  9 08:46:59 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_sip.c,v 1.173 2019/05/28 07:41:49 msaitoh Exp $	*/
+/*	$NetBSD: if_sip.c,v 1.174 2019/07/09 08:46:59 msaitoh Exp $	*/
 
 /*-
  * Copyright (c) 2001, 2002 The NetBSD Foundation, Inc.
@@ -73,7 +73,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_sip.c,v 1.173 2019/05/28 07:41:49 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_sip.c,v 1.174 2019/07/09 08:46:59 msaitoh Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -1266,6 +1266,7 @@ sipcom_attach(device_t parent, device_t 
 		 */
 		sc->sc_ethercom.ec_capabilities |=
 		    ETHERCAP_VLAN_HWTAGGING | ETHERCAP_JUMBO_MTU;
+		sc->sc_ethercom.ec_capenable |= ETHERCAP_VLAN_HWTAGGING;
 
 		/*
 		 * The DP83820 can do IPv4, TCPv4, and UDPv4 checksums

Index: src/sys/dev/pci/if_stge.c
diff -u src/sys/dev/pci/if_stge.c:1.69 src/sys/dev/pci/if_stge.c:1.70
--- src/sys/dev/pci/if_stge.c:1.69	Tue May 28 07:41:49 2019
+++ src/sys/dev/pci/if_stge.c	Tue Jul  9 08:46:59 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_stge.c,v 1.69 2019/05/28 07:41:49 msaitoh Exp $	*/
+/*	$NetBSD: if_stge.c,v 1.70 2019/07/09 08:46:59 msaitoh Exp $	*/
 
 /*-
  * Copyright (c) 2001 The NetBSD Foundation, Inc.
@@ -35,7 +35,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_stge.c,v 1.69 2019/05/28 07:41:49 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_stge.c,v 1.70 2019/07/09 08:46:59 msaitoh Exp $");
 
 
 #include <sys/param.h>
@@ -647,6 +647,7 @@ stge_attach(device_t parent, device_t se
 	sc->sc_ethercom.ec_capabilities |=
 	    ETHERCAP_VLAN_MTU | /* XXX ETHERCAP_JUMBO_MTU | */
 	    ETHERCAP_VLAN_HWTAGGING;
+	sc->sc_ethercom.ec_capenable |= ETHERCAP_VLAN_HWTAGGING;
 
 	/*
 	 * We can do IPv4/TCPv4/UDPv4 checksums in hardware.

Index: src/sys/dev/pci/if_ti.c
diff -u src/sys/dev/pci/if_ti.c:1.111 src/sys/dev/pci/if_ti.c:1.112
--- src/sys/dev/pci/if_ti.c:1.111	Wed May 29 10:07:29 2019
+++ src/sys/dev/pci/if_ti.c	Tue Jul  9 08:46:59 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: if_ti.c,v 1.111 2019/05/29 10:07:29 msaitoh Exp $ */
+/* $NetBSD: if_ti.c,v 1.112 2019/07/09 08:46:59 msaitoh Exp $ */
 
 /*
  * Copyright (c) 1997, 1998, 1999
@@ -81,7 +81,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_ti.c,v 1.111 2019/05/29 10:07:29 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_ti.c,v 1.112 2019/07/09 08:46:59 msaitoh Exp $");
 
 #include "opt_inet.h"
 
@@ -1831,6 +1831,7 @@ ti_attach(device_t parent, device_t self
 	 */
 	sc->ethercom.ec_capabilities |=
 	    ETHERCAP_VLAN_MTU | ETHERCAP_VLAN_HWTAGGING;
+	sc->ethercom.ec_capenable |= ETHERCAP_VLAN_HWTAGGING;
 
 	/*
 	 * We can do IPv4, TCPv4, and UDPv4 checksums in hardware.

Index: src/sys/dev/pci/if_txp.c
diff -u src/sys/dev/pci/if_txp.c:1.58 src/sys/dev/pci/if_txp.c:1.59
--- src/sys/dev/pci/if_txp.c:1.58	Thu Jun 20 15:25:28 2019
+++ src/sys/dev/pci/if_txp.c	Tue Jul  9 08:46:59 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: if_txp.c,v 1.58 2019/06/20 15:25:28 msaitoh Exp $ */
+/* $NetBSD: if_txp.c,v 1.59 2019/07/09 08:46:59 msaitoh Exp $ */
 
 /*
  * Copyright (c) 2001
@@ -32,7 +32,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_txp.c,v 1.58 2019/06/20 15:25:28 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_txp.c,v 1.59 2019/07/09 08:46:59 msaitoh Exp $");
 
 #include "opt_inet.h"
 
@@ -2022,6 +2022,7 @@ txp_capabilities(struct txp_softc *sc)
 		sc->sc_tx_capability |= OFFLOAD_VLAN;
 		sc->sc_rx_capability |= OFFLOAD_VLAN;
 		sc->sc_arpcom.ec_capabilities |= ETHERCAP_VLAN_HWTAGGING;
+		sc->sc_arpcom.ec_capenable |= ETHERCAP_VLAN_HWTAGGING;
 	}
 
 #if 0

Index: src/sys/dev/pci/if_vge.c
diff -u src/sys/dev/pci/if_vge.c:1.72 src/sys/dev/pci/if_vge.c:1.73
--- src/sys/dev/pci/if_vge.c:1.72	Tue May 28 07:41:49 2019
+++ src/sys/dev/pci/if_vge.c	Tue Jul  9 08:46:59 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: if_vge.c,v 1.72 2019/05/28 07:41:49 msaitoh Exp $ */
+/* $NetBSD: if_vge.c,v 1.73 2019/07/09 08:46:59 msaitoh Exp $ */
 
 /*-
  * Copyright (c) 2004
@@ -35,7 +35,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_vge.c,v 1.72 2019/05/28 07:41:49 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_vge.c,v 1.73 2019/07/09 08:46:59 msaitoh Exp $");
 
 /*
  * VIA Networking Technologies VT612x PCI gigabit ethernet NIC driver.
@@ -980,6 +980,7 @@ vge_attach(device_t parent, device_t sel
 	sc->sc_ethercom.ec_capabilities |=
 	    ETHERCAP_VLAN_MTU | ETHERCAP_JUMBO_MTU |
 	    ETHERCAP_VLAN_HWTAGGING;
+	sc->sc_ethercom.ec_capenable |= ETHERCAP_VLAN_HWTAGGING;
 
 	/*
 	 * We can do IPv4/TCPv4/UDPv4 checksums in hardware.

Index: src/sys/dev/pci/if_wm.c
diff -u src/sys/dev/pci/if_wm.c:1.641 src/sys/dev/pci/if_wm.c:1.642
--- src/sys/dev/pci/if_wm.c:1.641	Wed Jun 12 01:54:11 2019
+++ src/sys/dev/pci/if_wm.c	Tue Jul  9 08:46:59 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_wm.c,v 1.641 2019/06/12 01:54:11 msaitoh Exp $	*/
+/*	$NetBSD: if_wm.c,v 1.642 2019/07/09 08:46:59 msaitoh Exp $	*/
 
 /*
  * Copyright (c) 2001, 2002, 2003, 2004 Wasabi Systems, Inc.
@@ -82,7 +82,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_wm.c,v 1.641 2019/06/12 01:54:11 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_wm.c,v 1.642 2019/07/09 08:46:59 msaitoh Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_net_mpsafe.h"
@@ -2889,9 +2889,11 @@ alloc_retry:
 	}
 
 	/* If we're a i82543 or greater, we can support VLANs. */
-	if (sc->sc_type >= WM_T_82543)
+	if (sc->sc_type >= WM_T_82543) {
 		sc->sc_ethercom.ec_capabilities |=
 		    ETHERCAP_VLAN_MTU | ETHERCAP_VLAN_HWTAGGING;
+		sc->sc_ethercom.ec_capenable |= ETHERCAP_VLAN_HWTAGGING;
+	}
 
 	if ((sc->sc_flags & WM_F_EEE) != 0)
 		sc->sc_ethercom.ec_capabilities |= ETHERCAP_EEE;

Index: src/sys/net/if_vlan.c
diff -u src/sys/net/if_vlan.c:1.138 src/sys/net/if_vlan.c:1.139
--- src/sys/net/if_vlan.c:1.138	Tue Jun 25 12:30:50 2019
+++ src/sys/net/if_vlan.c	Tue Jul  9 08:46:58 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_vlan.c,v 1.138 2019/06/25 12:30:50 msaitoh Exp $	*/
+/*	$NetBSD: if_vlan.c,v 1.139 2019/07/09 08:46:58 msaitoh Exp $	*/
 
 /*
  * Copyright (c) 2000, 2001 The NetBSD Foundation, Inc.
@@ -78,7 +78,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_vlan.c,v 1.138 2019/06/25 12:30:50 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_vlan.c,v 1.139 2019/07/09 08:46:58 msaitoh Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_inet.h"
@@ -500,7 +500,6 @@ vlan_config(struct ifvlan *ifv, struct i
 		 * offload.
 		 */
 		if (ec->ec_capabilities & ETHERCAP_VLAN_HWTAGGING) {
-			ec->ec_capenable |= ETHERCAP_VLAN_HWTAGGING;
 			ifp->if_capabilities = p->if_capabilities &
 			    (IFCAP_TSOv4 | IFCAP_TSOv6 |
 				IFCAP_CSUM_IPv4_Tx  | IFCAP_CSUM_IPv4_Rx |

Reply via email to