PCI: Disable Samsung SM961/PM961 NVMe before FLR
authorAlex Williamson <alex.williamson@redhat.com>
Thu, 9 Aug 2018 20:18:33 +0000 (15:18 -0500)
committerBjorn Helgaas <bhelgaas@google.com>
Thu, 9 Aug 2018 20:18:33 +0000 (15:18 -0500)
commitffb0863426eb91a14101376051cfafa5527e665d
treef1144907157490f10e19957567054a06d522bcd7
parent2d2917f7747805a1f4188672f308d82a8ba01700
PCI: Disable Samsung SM961/PM961 NVMe before FLR

The Samsung SM961/PM961 (960 EVO) sometimes fails to return from FLR with
the PCI config space reading back as -1.  A reproducible instance of this
behavior is resolved by clearing the enable bit in the NVMe configuration
register and waiting for the ready status to clear (disabling the NVMe
controller) prior to FLR.

Link: https://bugzilla.redhat.com/show_bug.cgi?id=1542494
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
drivers/pci/quirks.c