| From c58003abb19d56bc0291228e1a887908d0e82dbd Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Wed, 12 Feb 2020 12:32:18 +0200 |
| Subject: nvme-pci: Use single IRQ vector for old Apple models |
| |
| From: Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
| |
| [ Upstream commit 98f7b86a0becc1154b1a6df6e75c9695dfd87e0d ] |
| |
| People reported that old Apple machines are not working properly |
| if the non-first IRQ vector is in use. |
| |
| Set quirk for that models to limit IRQ to use first vector only. |
| |
| Based on original patch by GitHub user npx001. |
| |
| Link: https://github.com/Dunedan/mbp-2016-linux/issues/9 |
| Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> |
| Cc: Leif Liddy <leif.liddy@gmail.com> |
| Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
| Signed-off-by: Keith Busch <kbusch@kernel.org> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/nvme/host/pci.c | 3 ++- |
| 1 file changed, 2 insertions(+), 1 deletion(-) |
| |
| diff --git a/drivers/nvme/host/pci.c b/drivers/nvme/host/pci.c |
| index ec4165e879163..d3f23d6254e47 100644 |
| --- a/drivers/nvme/host/pci.c |
| +++ b/drivers/nvme/host/pci.c |
| @@ -3121,7 +3121,8 @@ static const struct pci_device_id nvme_id_table[] = { |
| .driver_data = NVME_QUIRK_NO_DEEPEST_PS | |
| NVME_QUIRK_IGNORE_DEV_SUBNQN, }, |
| { PCI_DEVICE_CLASS(PCI_CLASS_STORAGE_EXPRESS, 0xffffff) }, |
| - { PCI_DEVICE(PCI_VENDOR_ID_APPLE, 0x2001) }, |
| + { PCI_DEVICE(PCI_VENDOR_ID_APPLE, 0x2001), |
| + .driver_data = NVME_QUIRK_SINGLE_VECTOR }, |
| { PCI_DEVICE(PCI_VENDOR_ID_APPLE, 0x2003) }, |
| { PCI_DEVICE(PCI_VENDOR_ID_APPLE, 0x2005), |
| .driver_data = NVME_QUIRK_SINGLE_VECTOR | |
| -- |
| 2.20.1 |
| |