svn commit: r303497 - head/sys/dev/pci

John Baldwin jhb at freebsd.org
Fri Jul 29 18:13:09 UTC 2016


On Friday, July 29, 2016 11:04:01 AM Ngie Cooper wrote:
> 
> > On Jul 29, 2016, at 10:54, John Baldwin <jhb at FreeBSD.org> wrote:
> > 
> > Author: jhb
> > Date: Fri Jul 29 17:54:21 2016
> > New Revision: 303497
> > URL: https://svnweb.freebsd.org/changeset/base/303497
> > 
> > Log:
> >  Add a loader tunable (hw.pci.enable_pcie_hp) to disable PCI-e HotPlug.
> > 
> >  Some systems and/or devices (such as riser cards) do not include a
> >  non-compliant implementation of PCI-e HotPlug that can result in devices
> >  not being attached (e.g. the HotPlug code might assume that a card is
> >  being unplugged and will power the slot off and detach it).  This
> >  tunable can be set to 0 to disable support for PCI-e HotPlug ignoring
> >  the incorrect HotPlug state on these slots.
> > 
> >  PR:        211081
> >  Reported by:    Sergey Renkas <serg_ic at mail.ru> (SuperMicro X7 riser card)
> >  Reported by:    Jeffrey E Pieper <jeffrey.e.pieper at intel.com>
> >          (Intel X520 adapter)
> >  MFC after:    1 week
> >  Relnotes:    yes
> 
> Should this be done on a per-bus basis?

For now this is just a way to disable it globally.  If need be we could add
a separate hint to do it per-bridge (hint.pcib.X.hp=0/1 or some such).

I'm still working with the Intel folks to see if I can narrow down exactly
what makes this chip unhappy to see if I can include a workaround.  Both of
these devices use a chip from PLX to manage an internal PCI bridge.  In
both cases the PLX chip reports that a mechnical latch is open (PCI HP
supports an optional latch that can be opened to release a card so it can
be removed), but neither device has a real latch (so the sensor has not
been wired correctly in either device).  However, just bypassing the sensor
check isn't sufficient to allow the devices behind the bridge to probe.

-- 
John Baldwin


More information about the svn-src-head mailing list