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);