]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blame - releases/5.10.94/pci-add-function-1-dma-alias-quirk-for-marvell-88se9125-sata-controller.patch
6.1-stable patches
[thirdparty/kernel/stable-queue.git] / releases / 5.10.94 / pci-add-function-1-dma-alias-quirk-for-marvell-88se9125-sata-controller.patch
CommitLineData
6aada80d
GKH
1From e445375882883f69018aa669b67cbb37ec873406 Mon Sep 17 00:00:00 2001
2From: Yifeng Li <tomli@tomli.me>
3Date: Thu, 2 Dec 2021 06:35:21 +0000
4Subject: PCI: Add function 1 DMA alias quirk for Marvell 88SE9125 SATA controller
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8
9From: Yifeng Li <tomli@tomli.me>
10
11commit e445375882883f69018aa669b67cbb37ec873406 upstream.
12
13Like other SATA controller chips in the Marvell 88SE91xx series, the
14Marvell 88SE9125 has the same DMA requester ID hardware bug that prevents
15it from working under IOMMU. Add it to the list of devices that need the
16quirk.
17
18Without this patch, device initialization fails with DMA errors:
19
20 ata8: softreset failed (1st FIS failed)
21 DMAR: DRHD: handling fault status reg 2
22 DMAR: [DMA Write NO_PASID] Request device [03:00.1] fault addr 0xfffc0000 [fault reason 0x02] Present bit in context entry is clear
23 DMAR: DRHD: handling fault status reg 2
24 DMAR: [DMA Read NO_PASID] Request device [03:00.1] fault addr 0xfffc0000 [fault reason 0x02] Present bit in context entry is clear
25
26After applying the patch, the controller can be successfully initialized:
27
28 ata8: SATA link up 1.5 Gbps (SStatus 113 SControl 330)
29 ata8.00: ATAPI: PIONEER BD-RW BDR-207M, 1.21, max UDMA/100
30 ata8.00: configured for UDMA/100
31 scsi 7:0:0:0: CD-ROM PIONEER BD-RW BDR-207M 1.21 PQ: 0 ANSI: 5
32
33Link: https://lore.kernel.org/r/YahpKVR+McJVDdkD@work
34Reported-by: Sam Bingner <sam@bingner.com>
35Tested-by: Sam Bingner <sam@bingner.com>
36Tested-by: Yifeng Li <tomli@tomli.me>
37Signed-off-by: Yifeng Li <tomli@tomli.me>
38Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
39Reviewed-by: Krzysztof WilczyƄski <kw@linux.com>
40Cc: stable@vger.kernel.org
41Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
42---
43 drivers/pci/quirks.c | 3 +++
44 1 file changed, 3 insertions(+)
45
46--- a/drivers/pci/quirks.c
47+++ b/drivers/pci/quirks.c
48@@ -4077,6 +4077,9 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_M
49 quirk_dma_func1_alias);
50 DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_MARVELL_EXT, 0x9123,
51 quirk_dma_func1_alias);
52+/* https://bugzilla.kernel.org/show_bug.cgi?id=42679#c136 */
53+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_MARVELL_EXT, 0x9125,
54+ quirk_dma_func1_alias);
55 DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_MARVELL_EXT, 0x9128,
56 quirk_dma_func1_alias);
57 /* https://bugzilla.kernel.org/show_bug.cgi?id=42679#c14 */