Module Name:    src
Committed By:   msaitoh
Date:           Wed Nov 15 03:50:22 UTC 2023

Modified Files:
        src/sys/dev/pci/ixgbe: ixgbe.c ixgbe_type.h ixv.c

Log Message:
ixgbe: Clear the WTHRESH bit field before writing it.


To generate a diff of this commit:
cvs rdiff -u -r1.347 -r1.348 src/sys/dev/pci/ixgbe/ixgbe.c
cvs rdiff -u -r1.61 -r1.62 src/sys/dev/pci/ixgbe/ixgbe_type.h
cvs rdiff -u -r1.195 -r1.196 src/sys/dev/pci/ixgbe/ixv.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/dev/pci/ixgbe/ixgbe.c
diff -u src/sys/dev/pci/ixgbe/ixgbe.c:1.347 src/sys/dev/pci/ixgbe/ixgbe.c:1.348
--- src/sys/dev/pci/ixgbe/ixgbe.c:1.347	Thu Nov  2 09:40:47 2023
+++ src/sys/dev/pci/ixgbe/ixgbe.c	Wed Nov 15 03:50:22 2023
@@ -1,4 +1,4 @@
-/* $NetBSD: ixgbe.c,v 1.347 2023/11/02 09:40:47 yamaguchi Exp $ */
+/* $NetBSD: ixgbe.c,v 1.348 2023/11/15 03:50:22 msaitoh Exp $ */
 
 /******************************************************************************
 
@@ -64,7 +64,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ixgbe.c,v 1.347 2023/11/02 09:40:47 yamaguchi Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ixgbe.c,v 1.348 2023/11/15 03:50:22 msaitoh Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_inet.h"
@@ -4157,6 +4157,7 @@ ixgbe_init_locked(struct ixgbe_softc *sc
 		txdctl = IXGBE_READ_REG(hw, IXGBE_TXDCTL(txr->me));
 		txdctl |= IXGBE_TXDCTL_ENABLE;
 		/* Set WTHRESH to 8, burst writeback */
+		txdctl &= ~IXGBE_TXDCTL_WTHRESH_MASK;
 		txdctl |= IXGBE_TX_WTHRESH << IXGBE_TXDCTL_WTHRESH_SHIFT;
 		/*
 		 * When the internal queue falls below PTHRESH (32),

Index: src/sys/dev/pci/ixgbe/ixgbe_type.h
diff -u src/sys/dev/pci/ixgbe/ixgbe_type.h:1.61 src/sys/dev/pci/ixgbe/ixgbe_type.h:1.62
--- src/sys/dev/pci/ixgbe/ixgbe_type.h:1.61	Wed Oct 11 09:43:17 2023
+++ src/sys/dev/pci/ixgbe/ixgbe_type.h	Wed Nov 15 03:50:22 2023
@@ -1,4 +1,4 @@
-/* $NetBSD: ixgbe_type.h,v 1.61 2023/10/11 09:43:17 msaitoh Exp $ */
+/* $NetBSD: ixgbe_type.h,v 1.62 2023/11/15 03:50:22 msaitoh Exp $ */
 
 /******************************************************************************
   SPDX-License-Identifier: BSD-3-Clause
@@ -2625,6 +2625,7 @@ enum {
 /* Transmit Config masks */
 #define IXGBE_TXDCTL_ENABLE		0x02000000 /* Ena specific Tx Queue */
 #define IXGBE_TXDCTL_SWFLSH		0x04000000 /* Tx Desc. wr-bk flushing */
+#define IXGBE_TXDCTL_WTHRESH_MASK	0x007f0000
 #define IXGBE_TXDCTL_WTHRESH_SHIFT	16 /* shift to WTHRESH bits */
 /* Enable short packet padding to 64 bytes */
 #define IXGBE_TX_PAD_ENABLE		0x00000400

Index: src/sys/dev/pci/ixgbe/ixv.c
diff -u src/sys/dev/pci/ixgbe/ixv.c:1.195 src/sys/dev/pci/ixgbe/ixv.c:1.196
--- src/sys/dev/pci/ixgbe/ixv.c:1.195	Wed Nov 15 02:43:38 2023
+++ src/sys/dev/pci/ixgbe/ixv.c	Wed Nov 15 03:50:22 2023
@@ -1,4 +1,4 @@
-/* $NetBSD: ixv.c,v 1.195 2023/11/15 02:43:38 msaitoh Exp $ */
+/* $NetBSD: ixv.c,v 1.196 2023/11/15 03:50:22 msaitoh Exp $ */
 
 /******************************************************************************
 
@@ -35,7 +35,7 @@
 /*$FreeBSD: head/sys/dev/ixgbe/if_ixv.c 331224 2018-03-19 20:55:05Z erj $*/
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ixv.c,v 1.195 2023/11/15 02:43:38 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ixv.c,v 1.196 2023/11/15 03:50:22 msaitoh Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_inet.h"
@@ -1748,6 +1748,7 @@ ixv_initialize_transmit_units(struct ixg
 
 		/* Set WTHRESH to 8, burst writeback */
 		txdctl = IXGBE_READ_REG(hw, IXGBE_VFTXDCTL(j));
+		txdctl &= ~IXGBE_TXDCTL_WTHRESH_MASK;
 		txdctl |= IXGBE_TX_WTHRESH << IXGBE_TXDCTL_WTHRESH_SHIFT;
 		IXGBE_WRITE_REG(hw, IXGBE_VFTXDCTL(j), txdctl);
 

Reply via email to