Module Name:    src
Committed By:   msaitoh
Date:           Wed Oct 11 09:43:17 UTC 2023

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

Log Message:
ixg(4): Print DEVICE_CAPS register.


To generate a diff of this commit:
cvs rdiff -u -r1.339 -r1.340 src/sys/dev/pci/ixgbe/ixgbe.c
cvs rdiff -u -r1.60 -r1.61 src/sys/dev/pci/ixgbe/ixgbe_type.h

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.339 src/sys/dev/pci/ixgbe/ixgbe.c:1.340
--- src/sys/dev/pci/ixgbe/ixgbe.c:1.339	Wed Oct 11 03:48:35 2023
+++ src/sys/dev/pci/ixgbe/ixgbe.c	Wed Oct 11 09:43:17 2023
@@ -1,4 +1,4 @@
-/* $NetBSD: ixgbe.c,v 1.339 2023/10/11 03:48:35 msaitoh Exp $ */
+/* $NetBSD: ixgbe.c,v 1.340 2023/10/11 09:43:17 msaitoh Exp $ */
 
 /******************************************************************************
 
@@ -64,7 +64,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ixgbe.c,v 1.339 2023/10/11 03:48:35 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ixgbe.c,v 1.340 2023/10/11 09:43:17 msaitoh Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_inet.h"
@@ -809,7 +809,7 @@ ixgbe_attach(device_t parent, device_t d
 	struct ixgbe_hw *hw;
 	int		error = -1;
 	u32		ctrl_ext;
-	u16		high, low, nvmreg;
+	u16		high, low, nvmreg, dev_caps;
 	pcireg_t	id, subid;
 	const ixgbe_vendor_info_t *ent;
 	struct pci_attach_args *pa = aux;
@@ -1277,10 +1277,15 @@ ixgbe_attach(device_t parent, device_t d
 	if (sc->feat_en & IXGBE_FEATURE_NETMAP)
 		ixgbe_netmap_attach(sc);
 
+	/* Print some flags */
 	snprintb(buf, sizeof(buf), IXGBE_FEATURE_FLAGS, sc->feat_cap);
 	aprint_verbose_dev(dev, "feature cap %s\n", buf);
 	snprintb(buf, sizeof(buf), IXGBE_FEATURE_FLAGS, sc->feat_en);
 	aprint_verbose_dev(dev, "feature ena %s\n", buf);
+	if (ixgbe_get_device_caps(hw, &dev_caps) == 0) {
+		snprintb(buf, sizeof(buf), IXGBE_DEVICE_CAPS_FLAGS, dev_caps);
+		aprint_verbose_dev(dev, "device cap %s\n", buf);
+	}
 
 	if (pmf_device_register(dev, ixgbe_suspend, ixgbe_resume))
 		pmf_class_network_register(dev, sc->ifp);

Index: src/sys/dev/pci/ixgbe/ixgbe_type.h
diff -u src/sys/dev/pci/ixgbe/ixgbe_type.h:1.60 src/sys/dev/pci/ixgbe/ixgbe_type.h:1.61
--- src/sys/dev/pci/ixgbe/ixgbe_type.h:1.60	Fri Oct  6 14:48:08 2023
+++ src/sys/dev/pci/ixgbe/ixgbe_type.h	Wed Oct 11 09:43:17 2023
@@ -1,4 +1,4 @@
-/* $NetBSD: ixgbe_type.h,v 1.60 2023/10/06 14:48:08 msaitoh Exp $ */
+/* $NetBSD: ixgbe_type.h,v 1.61 2023/10/11 09:43:17 msaitoh Exp $ */
 
 /******************************************************************************
   SPDX-License-Identifier: BSD-3-Clause
@@ -2553,6 +2553,10 @@ enum {
 #define IXGBE_DEVICE_CAPS_WOL_PORT0	0x8 /* WoL supported on port 0 */
 #define IXGBE_DEVICE_CAPS_WOL_MASK	0xC /* Mask for WoL capabilities */
 
+#define IXGBE_DEVICE_CAPS_FLAGS		"\20"				     \
+	"\1ALLOW_ANY_SFP" "\2FCOE_OFFLOAD" "\3WOL_PORT0_1" "\4WOL_PORT0"     \
+							"\10NO_CROSSTALK_WR"
+
 /* PCI Bus Info */
 #define IXGBE_PCI_DEVICE_STATUS		0xAA
 #define IXGBE_PCI_DEVICE_STATUS_TRANSACTION_PENDING	0x0020

Reply via email to