From nobody@FreeBSD.org  Tue Jul 16 19:07:25 2013
Return-Path: <nobody@FreeBSD.org>
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1])
	by hub.freebsd.org (Postfix) with ESMTP id 1C61760E
	for <freebsd-gnats-submit@FreeBSD.org>; Tue, 16 Jul 2013 19:07:25 +0000 (UTC)
	(envelope-from nobody@FreeBSD.org)
Received: from oldred.freebsd.org (oldred.freebsd.org [8.8.178.121])
	by mx1.freebsd.org (Postfix) with ESMTP id 0F3D6BD1
	for <freebsd-gnats-submit@FreeBSD.org>; Tue, 16 Jul 2013 19:07:25 +0000 (UTC)
Received: from oldred.freebsd.org ([127.0.1.6])
	by oldred.freebsd.org (8.14.5/8.14.7) with ESMTP id r6GJ7O2l061450
	for <freebsd-gnats-submit@FreeBSD.org>; Tue, 16 Jul 2013 19:07:24 GMT
	(envelope-from nobody@oldred.freebsd.org)
Received: (from nobody@localhost)
	by oldred.freebsd.org (8.14.5/8.14.5/Submit) id r6GJ7OOd061444;
	Tue, 16 Jul 2013 19:07:24 GMT
	(envelope-from nobody)
Message-Id: <201307161907.r6GJ7OOd061444@oldred.freebsd.org>
Date: Tue, 16 Jul 2013 19:07:24 GMT
From: Chris Main <chris.main@tenasys.com>
To: freebsd-gnats-submit@FreeBSD.org
Subject: PCIe chipset test is not valid on recent Intel platforms
X-Send-Pr-Version: www-3.1
X-GNATS-Notify:

>Number:         180599
>Category:       i386
>Synopsis:       PCIe chipset test is not valid on recent Intel platforms
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-i386
>State:          open
>Quarter:
>Keywords:
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Tue Jul 16 19:10:00 UTC 2013
>Closed-Date:
>Last-Modified:
>Originator:     Chris Main
>Release:        9.1
>Organization:
TenAsys
>Environment:
(various)
>Description:
It is not possible to set up MSI interrupts on devices which appear before a PCI Express root complex on Intel series 7/series 8 chipsets because the pci_msi_blacklisted() test fails (in dev/pci.c)
The reason is that the method for setting the pcie_chipset variable is no longer valid. Most devices in a PCI Express system no longer have the PCI Express capability registers, unless they are PCI Express root complexes or PCI Express plug-in cards. 

An example is the XHCI controller in the 7-series chipset, which occurs at pci0:0:20:0 and has no PCI Express capability register, but is MSI-capable. Because none of the preceding devices have the PCI Express capability either, the MSI test fails. 
>How-To-Repeat:
Boot FreeBSD on such a system and use pciconf to demonstrate that the XHCI has been set up with an IRQ and not MSI. 
>Fix:
Need a different method to determine system PCI Express property 

>Release-Note:
>Audit-Trail:
>Unformatted:
