changeset 6505:665efb08b6b0 onnv_89

6685817 The U40 M2 systems fail to boot the "Solaris xVM" selection
author krishnae
date Mon, 28 Apr 2008 16:52:15 -0700
parents 824f067a322a
children 7b0c3c976ebc
files usr/src/uts/common/io/pcie.c
diffstat 1 files changed, 9 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/usr/src/uts/common/io/pcie.c	Mon Apr 28 16:21:37 2008 -0700
+++ b/usr/src/uts/common/io/pcie.c	Mon Apr 28 16:52:15 2008 -0700
@@ -267,7 +267,16 @@
 		/* Setup the device's secondary command register */
 		reg16 = PCIE_GET(16, bus_p, PCI_BCNF_BCNTRL);
 		tmp16 = (reg16 & pcie_bdg_command_default_fw);
+
 		tmp16 |= PCI_BCNF_BCNTRL_SERR_ENABLE;
+		/*
+		 * Workaround for this Nvidia bridge. Don't enable the SERR
+		 * enable bit in the bridge control register as it could lead to
+		 * bogus NMIs.
+		 */
+		if (bus_p->bus_dev_ven_id == 0x037010DE)
+			tmp16 &= ~PCI_BCNF_BCNTRL_SERR_ENABLE;
+
 		if (pcie_command_default & PCI_COMM_PARITY_DETECT)
 			tmp16 |= PCI_BCNF_BCNTRL_PARITY_ENABLE;