aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPyun YongHyeon <yongari@FreeBSD.org>2008-10-01 00:17:54 +0000
committerPyun YongHyeon <yongari@FreeBSD.org>2008-10-01 00:17:54 +0000
commitbe38e61a5223727e6a423bf367dc27a3ffc45a3d (patch)
treef02e5bff2e6f6638222ca9af9a5d8cec056ae14c
parent1cfe52493faf174e98ef18bad11e987aca8fc596 (diff)
downloadsrc-be38e61a5223727e6a423bf367dc27a3ffc45a3d.tar.gz
src-be38e61a5223727e6a423bf367dc27a3ffc45a3d.zip
Add device ids for MCP77/79 and set appropriate support flags.
Obtained from: OpenBSD PR: kern/127529
Notes
Notes: svn path=/head/; revision=183509
-rw-r--r--sys/dev/nfe/if_nfe.c32
-rw-r--r--sys/dev/nfe/if_nfereg.h8
2 files changed, 40 insertions, 0 deletions
diff --git a/sys/dev/nfe/if_nfe.c b/sys/dev/nfe/if_nfe.c
index 5c340d373b21..51b8251484ab 100644
--- a/sys/dev/nfe/if_nfe.c
+++ b/sys/dev/nfe/if_nfe.c
@@ -245,6 +245,22 @@ static struct nfe_type nfe_devs[] = {
"NVIDIA nForce MCP73 Networking Adapter"},
{PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_MCP73_LAN4,
"NVIDIA nForce MCP73 Networking Adapter"},
+ {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_MCP77_LAN1,
+ "NVIDIA nForce MCP77 Networking Adapter"},
+ {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_MCP77_LAN2,
+ "NVIDIA nForce MCP77 Networking Adapter"},
+ {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_MCP77_LAN3,
+ "NVIDIA nForce MCP77 Networking Adapter"},
+ {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_MCP77_LAN4,
+ "NVIDIA nForce MCP77 Networking Adapter"},
+ {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_MCP79_LAN1,
+ "NVIDIA nForce MCP79 Networking Adapter"},
+ {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_MCP79_LAN2,
+ "NVIDIA nForce MCP79 Networking Adapter"},
+ {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_MCP79_LAN3,
+ "NVIDIA nForce MCP79 Networking Adapter"},
+ {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_MCP79_LAN4,
+ "NVIDIA nForce MCP79 Networking Adapter"},
{0, 0, NULL}
};
@@ -467,6 +483,22 @@ nfe_attach(device_t dev)
sc->nfe_flags |= NFE_40BIT_ADDR | NFE_PWR_MGMT |
NFE_CORRECT_MACADDR | NFE_TX_FLOW_CTRL;
break;
+ case PCI_PRODUCT_NVIDIA_MCP77_LAN1:
+ case PCI_PRODUCT_NVIDIA_MCP77_LAN2:
+ case PCI_PRODUCT_NVIDIA_MCP77_LAN3:
+ case PCI_PRODUCT_NVIDIA_MCP77_LAN4:
+ /* XXX flow control */
+ sc->nfe_flags |= NFE_40BIT_ADDR | NFE_HW_CSUM | NFE_PWR_MGMT |
+ NFE_CORRECT_MACADDR;
+ break;
+ case PCI_PRODUCT_NVIDIA_MCP79_LAN1:
+ case PCI_PRODUCT_NVIDIA_MCP79_LAN2:
+ case PCI_PRODUCT_NVIDIA_MCP79_LAN3:
+ case PCI_PRODUCT_NVIDIA_MCP79_LAN4:
+ /* XXX flow control */
+ sc->nfe_flags |= NFE_JUMBO_SUP | NFE_40BIT_ADDR | NFE_HW_CSUM |
+ NFE_PWR_MGMT | NFE_CORRECT_MACADDR;
+ break;
case PCI_PRODUCT_NVIDIA_MCP65_LAN1:
case PCI_PRODUCT_NVIDIA_MCP65_LAN2:
case PCI_PRODUCT_NVIDIA_MCP65_LAN3:
diff --git a/sys/dev/nfe/if_nfereg.h b/sys/dev/nfe/if_nfereg.h
index 093b379f23d5..01cc01ddc8ad 100644
--- a/sys/dev/nfe/if_nfereg.h
+++ b/sys/dev/nfe/if_nfereg.h
@@ -295,6 +295,14 @@ struct nfe_desc64 {
#define PCI_PRODUCT_NVIDIA_MCP73_LAN2 0x07dd
#define PCI_PRODUCT_NVIDIA_MCP73_LAN3 0x07de
#define PCI_PRODUCT_NVIDIA_MCP73_LAN4 0x07df
+#define PCI_PRODUCT_NVIDIA_MCP77_LAN1 0x0760
+#define PCI_PRODUCT_NVIDIA_MCP77_LAN2 0x0761
+#define PCI_PRODUCT_NVIDIA_MCP77_LAN3 0x0762
+#define PCI_PRODUCT_NVIDIA_MCP77_LAN4 0x0763
+#define PCI_PRODUCT_NVIDIA_MCP79_LAN1 0x0ab0
+#define PCI_PRODUCT_NVIDIA_MCP79_LAN2 0x0ab1
+#define PCI_PRODUCT_NVIDIA_MCP79_LAN3 0x0ab2
+#define PCI_PRODUCT_NVIDIA_MCP79_LAN4 0x0ab3
#define PCI_PRODUCT_NVIDIA_NFORCE3_LAN2 PCI_PRODUCT_NVIDIA_NFORCE2_400_LAN1
#define PCI_PRODUCT_NVIDIA_NFORCE3_LAN3 PCI_PRODUCT_NVIDIA_NFORCE2_400_LAN2