Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 13 Jan 2012 02:33:55 +0000 (UTC)
From:      Oleksandr Tymoshenko <gonzo@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r230040 - head/sys/contrib/octeon-sdk
Message-ID:  <201201130233.q0D2XtWR037275@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: gonzo
Date: Fri Jan 13 02:33:55 2012
New Revision: 230040
URL: http://svn.freebsd.org/changeset/base/230040

Log:
  - Do not enumerate PCIe bus on CN56XX Pass 1 devices to avoid hard hang.
      There is known issue with this hardware.
  
  Submitted by:	Andrew Duane <aduane@juniper.net>

Modified:
  head/sys/contrib/octeon-sdk/cvmx-pcie.c

Modified: head/sys/contrib/octeon-sdk/cvmx-pcie.c
==============================================================================
--- head/sys/contrib/octeon-sdk/cvmx-pcie.c	Fri Jan 13 00:38:35 2012	(r230039)
+++ head/sys/contrib/octeon-sdk/cvmx-pcie.c	Fri Jan 13 02:33:55 2012	(r230040)
@@ -501,6 +501,12 @@ retry:
         }
     }
 
+    /* Make sure a CN56XX pass 1 isn't trying to do anything; errata for PASS 1 */
+    if (OCTEON_IS_MODEL(OCTEON_CN56XX_PASS1_X)) {
+        cvmx_dprintf ("PCIe port %d: CN56XX_PASS_1, skipping\n", pcie_port);
+        return -1;
+    }
+
     /* PCIe switch arbitration mode. '0' == fixed priority NPEI, PCIe0, then PCIe1. '1' == round robin. */
     npei_ctl_status.s.arb = 1;
     /* Allow up to 0x20 config retries */



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201201130233.q0D2XtWR037275>