| From 0714045a91aea35e1b1136bbd9b755b24b6a4371 Mon Sep 17 00:00:00 2001 |
| From: Abhijeet Rao <abhijeet.rao@intel.corp-partner.google.com> |
| Date: Fri, 18 Mar 2022 02:56:36 +0000 |
| Subject: [PATCH] Reland "FROMLIST: PCI/DPC: Disable DPC service when link is |
| in L2/L3 ready, L2 and L3 state" |
| |
| This reverts commit c78ed2bbdacd3aa9d37d9c814ae839c0835f01fa. |
| |
| Reason for revert: The hard hang issue will be fixed in CB. Hence these patches can be relanded |
| |
| BUG=b:217419041 |
| |
| TEST=Connect Gatkex card and authorize it & run suspend_stress_test -c 10 |
| |
| Signed-off-by: Abhijeet Rao <abhijeet.rao@intel.corp-partner.google.com> |
| |
| Original change's description: |
| > Revert "FROMLIST: PCI/DPC: Disable DPC service when link is in L2/L3 ready, L2 and L3 state" |
| > |
| > This reverts commit 93e7d232f85b0d597f8e9884386b9e3d43cedd3a. |
| > |
| > Reason for revert: debug patch : Causing regression with Soix, b/220796339 |
| > |
| > BUG: b/220796339 |
| > |
| > Original change's description: |
| > > FROMLIST: PCI/DPC: Disable DPC service when link is in L2/L3 ready, L2 and L3 state |
| > > |
| > > Since TLP and DLLP transmission is disabled for a Link in L2/L3 Ready, |
| > > L2 and L3 (i.e. device in D3hot and D3cold), and DPC depends on AER, so |
| > > also disable DPC here. |
| > > |
| > > Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com> |
| > > Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com> |
| > > (am from https://patchwork.kernel.org/patch/12726164/) |
| > > (also found at https://lore.kernel.org/r/20220127025418.1989642-2-kai.heng.feng@canonical.com) |
| > > |
| > > BUG=b:217419041 |
| > > TEST=Connect Gatkex card and authorize it & run suspend_stress_test -c 10 |
| > > . S0ix test passes 10 cycles |
| > > |
| > > Signed-off-by: Prashant Malani <pmalani@chromium.org> |
| > > Signed-off-by: George D Sworo <george.d.sworo@intel.com> |
| > > Change-Id: Idcadb2bcaf1421709ec13eb667c9d006e24cf3d5 |
| > > Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/3437706 |
| > > Reviewed-by: Sean Paul <seanpaul@chromium.org> |
| > > Reviewed-by: Rajat Jain <rajatja@google.com> |
| > |
| > Bug: b:217419041 |
| > Change-Id: I889cb1fd1dba06ef1ccc6f76d3079651b52e528e |
| > Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/3499774 |
| > Reviewed-by: Rajat Jain <rajatja@google.com> |
| > Tested-by: Rajat Jain <rajatja@google.com> |
| > Commit-Queue: Rajat Jain <rajatja@google.com> |
| |
| Bug: b:217419041 |
| Change-Id: I3406f2fee4f2b5f7583528a5a3287fb29718c2e5 |
| Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/3535339 |
| Reviewed-by: Sean Paul <seanpaul@chromium.org> |
| Reviewed-by: Rajat Jain <rajatja@google.com> |
| Commit-Queue: Rajat Jain <rajatja@google.com> |
| Tested-by: Rajat Jain <rajatja@google.com> |
| (cherry picked from commit 2336cd4cf7e1dfce9d956c4675fd9354144155fb) |
| Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/3539623 |
| --- |
| drivers/pci/pcie/dpc.c | 16 +++++++++------- |
| 1 file changed, 9 insertions(+), 7 deletions(-) |
| |
| diff --git a/drivers/pci/pcie/dpc.c b/drivers/pci/pcie/dpc.c |
| index 2b6ef7efa3c113ad0c4b982dc922c7d661c7fffa..cf084d954cd0b7cc26282dec9c647654e157f528 100644 |
| --- a/drivers/pci/pcie/dpc.c |
| +++ b/drivers/pci/pcie/dpc.c |
| @@ -495,13 +495,15 @@ static void dpc_remove(struct pcie_device *dev) |
| } |
| |
| static struct pcie_port_service_driver dpcdriver = { |
| - .name = "dpc", |
| - .port_type = PCIE_ANY_PORT, |
| - .service = PCIE_PORT_SERVICE_DPC, |
| - .probe = dpc_probe, |
| - .suspend = dpc_suspend, |
| - .resume = dpc_resume, |
| - .remove = dpc_remove, |
| + .name = "dpc", |
| + .port_type = PCIE_ANY_PORT, |
| + .service = PCIE_PORT_SERVICE_DPC, |
| + .probe = dpc_probe, |
| + .suspend = dpc_suspend, |
| + .resume = dpc_resume, |
| + .runtime_suspend = dpc_suspend, |
| + .runtime_resume = dpc_resume, |
| + .remove = dpc_remove, |
| }; |
| |
| int __init pcie_dpc_init(void) |
| -- |
| 2.46.0.rc2.264.g509ed76dc8-goog |
| |