[Skiboot] [PATCH v2 0/8] PCI Hotplug Support for P8DNU Machine

Stewart Smith stewart at linux.vnet.ibm.com
Wed Feb 22 17:25:22 AEDT 2017


Gavin Shan <gwshan at linux.vnet.ibm.com> writes:
> This series includes fixes to support PCI hotplug for superMicro's last
> platform "P8DNU". It's worthy to include some of them in stable branches
> as well:
>
>   - Cached presence state is out of sync with hardware.
>   - Cached slot power state should be fected from power state bits in
>     PCIe capability.
>   - Slot power supply lost on hot-remove, but it's not on automatically
>     on hot-add. So we have to turn it on after PCI adapter is present.
>   - Presence Detection Change (PDC) not reliable. Switch to Link State
>     Change instead.
>
> With this series applied, Willie (from SuperMicro) and Hank (from IBM
> Taiwan) tested various hotplug scenarios on P8DNU machine as below. All
> worked. I don't have a P8DNU around. Willie and Hank had huge efforts
> to test/verify. Great thanks to them.
>
>   - NVMe hot-add to empty slot;
>   - NVMe hot-remove;
>   - NVMe hot-swap;
>
> Changelog
> =========
> v1 -> v2:
>    * Willie modified p8dnu.c according to Stewart's comments: Add IBM's
>      copyright 2017; Have platform.bmc to send correct code to sensor.
>    * Unnecessary comments are removed in p8dnu.c. Give file scoped
>      variables receive "static" property. 
>
> Gavin Shan (7):
>   core/pci: More reliable way to update PCI slot power state
>   core/pci: Fix PCIe slot's presence
>   core/pci: Enforce polling PCIe link in hot-add path
>   core/pci: No validation on pd and ecap in pcie_slot_create()
>   astbmc/p8dnu: Enable PCI slot's power supply on PEX9733 in hot-add
>     path
>   astbmc/p8dnu: Enable PCI slot's power supply on PEX8718 in hot-add
>     path
>   core/pci: Mark broken PDC on slots without surprise hotplug capability
>
> Willie Liauw (1):
>   platforms/astbmc: Support SMC's P8DNU
>
>  core/pci-slot.c               |   3 +
>  core/pcie-slot.c              |  61 +++++--
>  doc/pci-slot.rst              |  22 +--
>  include/pci-slot.h            |   3 +
>  platforms/astbmc/Makefile.inc |   3 +-
>  platforms/astbmc/p8dnu.c      | 359 ++++++++++++++++++++++++++++++++++++++++++
>  platforms/astbmc/slots.c      |  15 ++
>  7 files changed, 438 insertions(+), 28 deletions(-)
>  create mode 100644 platforms/astbmc/p8dnu.c

Thanks! Series merged to master as of
98e81fe6522f9484feaaac2200407149d29bd1d3

I also cherry-picked these two back to 5.4.x as asked for:
b03d75da4a7f1211e59166115ec66d1dd674fbad
9e3c7ee4086fc9123134209aebcecd0c1f95e2ca

-- 
Stewart Smith
OPAL Architect, IBM.



More information about the Skiboot mailing list