diff mbox series

[1/1] UBUNTU: SAUCE: PCI: Enable ACS quirk on CML root port

Message ID 20200915173655.11865-2-kai.heng.feng@canonical.com
State New
Headers show
Series [1/1] UBUNTU: SAUCE: PCI: Enable ACS quirk on CML root port | expand

Commit Message

Kai-Heng Feng Sept. 15, 2020, 5:36 p.m. UTC
BugLink: https://bugs.launchpad.net/bugs/1895718

Commit "iommu/vt-d: Enable PCI ACS for platform opt in hint" makes
KIOXIA NVMe stops working after S3:
[   50.947816] pcieport 0000:00:1b.0: DPC: containment event, status:0x1f01 source:0x0000
[   50.947817] pcieport 0000:00:1b.0: DPC: unmasked uncorrectable error detected
[   50.947829] pcieport 0000:00:1b.0: PCIe Bus Error: severity=Uncorrected (Non-Fatal), type=Transaction Layer, (Receiver ID)
[   50.947830] pcieport 0000:00:1b.0:   device [8086:06ac] error status/mask=00200000/00010000
[   50.947831] pcieport 0000:00:1b.0:    [21] ACSViol                (First)
[   50.947841] pcieport 0000:00:1b.0: AER: broadcast error_detected message
[   50.947843] nvme nvme0: frozen state error detected, reset controller

Intel thinks CML also needs the ACS quirk, so adding it accordingly

This patch will eventually be replaced by upstream version from Intel.

Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com>
---
 drivers/pci/quirks.c | 1 +
 1 file changed, 1 insertion(+)

Comments

Kleber Souza Sept. 16, 2020, 9:10 a.m. UTC | #1
On 15.09.20 19:36, Kai-Heng Feng wrote:
> BugLink: https://bugs.launchpad.net/bugs/1895718
> 
> Commit "iommu/vt-d: Enable PCI ACS for platform opt in hint" makes
> KIOXIA NVMe stops working after S3:
> [   50.947816] pcieport 0000:00:1b.0: DPC: containment event, status:0x1f01 source:0x0000
> [   50.947817] pcieport 0000:00:1b.0: DPC: unmasked uncorrectable error detected
> [   50.947829] pcieport 0000:00:1b.0: PCIe Bus Error: severity=Uncorrected (Non-Fatal), type=Transaction Layer, (Receiver ID)
> [   50.947830] pcieport 0000:00:1b.0:   device [8086:06ac] error status/mask=00200000/00010000
> [   50.947831] pcieport 0000:00:1b.0:    [21] ACSViol                (First)
> [   50.947841] pcieport 0000:00:1b.0: AER: broadcast error_detected message
> [   50.947843] nvme nvme0: frozen state error detected, reset controller
> 
> Intel thinks CML also needs the ACS quirk, so adding it accordingly
> 
> This patch will eventually be replaced by upstream version from Intel.
> 
> Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com>

Acked-by: Kleber Sacilotto de Souza <kleber.souza@canonical.com>

> ---
>  drivers/pci/quirks.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
> index 3ee66e7c5a14..25a1563add06 100644
> --- a/drivers/pci/quirks.c
> +++ b/drivers/pci/quirks.c
> @@ -4651,6 +4651,7 @@ static bool pci_quirk_intel_spt_pch_acs_match(struct pci_dev *dev)
>  		return false;
>  
>  	switch (dev->device) {
> +	case 0x06ac: /* Comet Lake */
>  	case 0xa110 ... 0xa11f: case 0xa167 ... 0xa16a: /* Sunrise Point */
>  	case 0xa290 ... 0xa29f: case 0xa2e7 ... 0xa2ee: /* Union Point */
>  	case 0x9d10 ... 0x9d1b: /* 7th & 8th Gen Mobile */
>
Stefan Bader Sept. 16, 2020, 3:17 p.m. UTC | #2
On 15.09.20 19:36, Kai-Heng Feng wrote:
> BugLink: https://bugs.launchpad.net/bugs/1895718
> 
> Commit "iommu/vt-d: Enable PCI ACS for platform opt in hint" makes
> KIOXIA NVMe stops working after S3:
> [   50.947816] pcieport 0000:00:1b.0: DPC: containment event, status:0x1f01 source:0x0000
> [   50.947817] pcieport 0000:00:1b.0: DPC: unmasked uncorrectable error detected
> [   50.947829] pcieport 0000:00:1b.0: PCIe Bus Error: severity=Uncorrected (Non-Fatal), type=Transaction Layer, (Receiver ID)
> [   50.947830] pcieport 0000:00:1b.0:   device [8086:06ac] error status/mask=00200000/00010000
> [   50.947831] pcieport 0000:00:1b.0:    [21] ACSViol                (First)
> [   50.947841] pcieport 0000:00:1b.0: AER: broadcast error_detected message
> [   50.947843] nvme nvme0: frozen state error detected, reset controller
> 
> Intel thinks CML also needs the ACS quirk, so adding it accordingly
> 
> This patch will eventually be replaced by upstream version from Intel.
> 
> Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com>
Acked-by: Stefan Bader <stefan.bader@canonical.com>
> ---
>  drivers/pci/quirks.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
> index 3ee66e7c5a14..25a1563add06 100644
> --- a/drivers/pci/quirks.c
> +++ b/drivers/pci/quirks.c
> @@ -4651,6 +4651,7 @@ static bool pci_quirk_intel_spt_pch_acs_match(struct pci_dev *dev)
>  		return false;
>  
>  	switch (dev->device) {
> +	case 0x06ac: /* Comet Lake */
>  	case 0xa110 ... 0xa11f: case 0xa167 ... 0xa16a: /* Sunrise Point */
>  	case 0xa290 ... 0xa29f: case 0xa2e7 ... 0xa2ee: /* Union Point */
>  	case 0x9d10 ... 0x9d1b: /* 7th & 8th Gen Mobile */
>
diff mbox series

Patch

diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
index 3ee66e7c5a14..25a1563add06 100644
--- a/drivers/pci/quirks.c
+++ b/drivers/pci/quirks.c
@@ -4651,6 +4651,7 @@  static bool pci_quirk_intel_spt_pch_acs_match(struct pci_dev *dev)
 		return false;
 
 	switch (dev->device) {
+	case 0x06ac: /* Comet Lake */
 	case 0xa110 ... 0xa11f: case 0xa167 ... 0xa16a: /* Sunrise Point */
 	case 0xa290 ... 0xa29f: case 0xa2e7 ... 0xa2ee: /* Union Point */
 	case 0x9d10 ... 0x9d1b: /* 7th & 8th Gen Mobile */