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

Alan Somers asomers at freebsd.org
Tue Aug 30 16:04:01 UTC 2016


On Tue, Aug 16, 2016 at 7:24 PM, Eric van Gyzen <vangyzen at freebsd.org> wrote:
> Author: vangyzen
> Date: Wed Aug 17 01:24:34 2016
> New Revision: 304246
> URL: https://svnweb.freebsd.org/changeset/base/304246
>
> Log:
>   PCIe HotPlug: Detect bridges that are not really HotPlug capable
>
>   Some devices report that they have an MRL when they actually
>   do not.  Since they always report that the MRL is open, child
>   devices would be ignored.  Try to detect these devices and
>   ignore their claim of HotPlug support.  Specifically,
>   if there is an open MRL but the Data Link Layer is active,
>   the MRL is not real.
>
>   Revert r303645 to re-enable HotPlug support for slots with
>   power controllers, since it works correctly in my testing.
>
>   Start the DLL state-change timer if Presence /or/ MRL state changes,
>   along with other conditions.  Previously, we started the timer iff
>   Presence changed.  If there is an MRL, it must be closed for power
>   to be turned on, so Presence is unlikely to change on an MRL-close event.
>
>   Add a printf() of interesting registers on HotPlug interrupts and
>   commands (one from erj@).  These were very useful for debugging.
>   Guard them with bootverbose, since they're spam in normal operation.
>
>   In collaboration with:        jhb
>   Reviewed by:  jhb
>   MFC after:    1 day
>   Relnotes:     yes (re-enable HotPlug support for slots with power controllers)
>   Sponsored by: Dell Inc.
>   Differential Revision:        https://reviews.freebsd.org/D7509
>
> Modified:
>   head/sys/dev/pci/pci_pci.c
>

I suspect that this has caused a regression for a Dell CS23-SH.  It
worked on stable/11 at r303879 but in 11.0 RC2 it hangs on boot.  See
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=211699 .


More information about the svn-src-head mailing list