6595730 bge support for Broadcom NetLink BCM5787M Gigabit Ethernet(pci14e4,1693.17aa.3860.2)
authorml40262
Tue, 01 Jul 2008 11:12:22 -0700
changeset 6989 7385b7b2ab40
parent 6988 6e7ccf1f1466
child 6990 d24af98bb8ea
6595730 bge support for Broadcom NetLink BCM5787M Gigabit Ethernet(pci14e4,1693.17aa.3860.2)
usr/src/pkgdefs/SUNWbge/postinstall
usr/src/uts/common/io/bge/bge_chip2.c
usr/src/uts/common/io/bge/bge_hw.h
usr/src/uts/common/io/bge/bge_main2.c
--- a/usr/src/pkgdefs/SUNWbge/postinstall	Tue Jul 01 11:12:03 2008 -0700
+++ b/usr/src/pkgdefs/SUNWbge/postinstall	Tue Jul 01 11:12:22 2008 -0700
@@ -165,6 +165,8 @@
 	"pciex14e4,167a"
 	"pciex14e4,167b"
 	"pci14e4,167d"
+	"pci14e4,1693"
+	"pci14e4,169b"
 	"pciex14e4,16fd"
 	"pciex14e4,169d"' \
 	-b "$BASEDIR" bge
--- a/usr/src/uts/common/io/bge/bge_chip2.c	Tue Jul 01 11:12:03 2008 -0700
+++ b/usr/src/uts/common/io/bge/bge_chip2.c	Tue Jul 01 11:12:22 2008 -0700
@@ -1871,6 +1871,8 @@
 	case DEVICE_ID_5705_2:
 	case DEVICE_ID_5706:
 	case DEVICE_ID_5782:
+	case DEVICE_ID_5787:
+	case DEVICE_ID_5787M:
 	case DEVICE_ID_5788:
 	case DEVICE_ID_5789:
 	case DEVICE_ID_5751:
@@ -2102,6 +2104,24 @@
 		dev_ok = B_TRUE;
 		break;
 
+	case DEVICE_ID_5787:
+	case DEVICE_ID_5787M:
+		cidp->chip_label = 5787;
+		cidp->pci_type = BGE_PCI_E;
+		cidp->mbuf_lo_water_rdma = RDMA_MBUF_LOWAT_5705;
+		cidp->mbuf_lo_water_rmac = MAC_RX_MBUF_LOWAT_5705;
+		cidp->mbuf_hi_water = MBUF_HIWAT_5705;
+		cidp->mbuf_base = bge_mbuf_pool_base_5705;
+		cidp->mbuf_length = bge_mbuf_pool_len_5705;
+		cidp->recv_slots = BGE_RECV_SLOTS_5705;
+		cidp->bge_mlcr_default |= MLCR_MISC_PINS_OUTPUT_ENABLE_1;
+		cidp->rx_rings = BGE_RECV_RINGS_MAX_5705;
+		cidp->tx_rings = BGE_SEND_RINGS_MAX_5705;
+		cidp->flags |= CHIP_FLAG_NO_JUMBO;
+		cidp->statistic_type = BGE_STAT_REG;
+		dev_ok = B_TRUE;
+		break;
+
 	case DEVICE_ID_5706:
 		cidp->chip_label = 5706;
 		cidp->flags |= CHIP_FLAG_NO_JUMBO;
--- a/usr/src/uts/common/io/bge/bge_hw.h	Tue Jul 01 11:12:03 2008 -0700
+++ b/usr/src/uts/common/io/bge/bge_hw.h	Tue Jul 01 11:12:22 2008 -0700
@@ -71,6 +71,8 @@
 #define	DEVICE_ID_5705F			0x166e
 #define	DEVICE_ID_5706			0x164a
 #define	DEVICE_ID_5782			0x1696
+#define	DEVICE_ID_5787			0x169b
+#define	DEVICE_ID_5787M			0x1693
 #define	DEVICE_ID_5788			0x169c
 #define	DEVICE_ID_5789			0x169d
 #define	DEVICE_ID_5751			0x1677
@@ -262,6 +264,10 @@
 #define	MHCR_CHIP_REV_5754_A0		0xb0000000
 #define	MHCR_CHIP_REV_5754_A1		0xb0010000
 
+#define	MHCR_CHIP_REV_5787_A0		0xb0000000
+#define	MHCR_CHIP_REV_5787_A1		0xb0010000
+#define	MHCR_CHIP_REV_5787_A2		0xb0020000
+
 #define	MHCR_CHIP_REV_5755_A0		0xa0000000
 #define	MHCR_CHIP_REV_5755_A1		0xa0010000
 
@@ -275,6 +281,7 @@
 #define	MHCR_CHIP_ASIC_REV_5714 	(0x5 << 28)
 #define	MHCR_CHIP_ASIC_REV_5752		(0x6 << 28)
 #define	MHCR_CHIP_ASIC_REV_5754		(0xb << 28)
+#define	MHCR_CHIP_ASIC_REV_5787		((uint32_t)0xb << 28)
 #define	MHCR_CHIP_ASIC_REV_5755		((uint32_t)0xa << 28)
 #define	MHCR_CHIP_ASIC_REV_5715 	((uint32_t)0x9 << 28)
 
--- a/usr/src/uts/common/io/bge/bge_main2.c	Tue Jul 01 11:12:03 2008 -0700
+++ b/usr/src/uts/common/io/bge/bge_main2.c	Tue Jul 01 11:12:22 2008 -0700
@@ -34,7 +34,7 @@
  * This is the string displayed by modinfo, etc.
  * Make sure you keep the version ID up to date!
  */
-static char bge_ident[] = "Broadcom Gb Ethernet v0.62";
+static char bge_ident[] = "Broadcom Gb Ethernet v0.63";
 
 /*
  * Property names