[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20191114232515.GA13757@google.com>
Date: Thu, 14 Nov 2019 17:25:15 -0600
From: Bjorn Helgaas <helgaas@...nel.org>
To: Mika Westerberg <mika.westerberg@...ux.intel.com>
Cc: "Rafael J. Wysocki" <rjw@...ysocki.net>,
Len Brown <lenb@...nel.org>, Lukas Wunner <lukas@...ner.de>,
Keith Busch <keith.busch@...el.com>,
Alex Williamson <alex.williamson@...hat.com>,
Alexandru Gagniuc <mr.nuke.me@...il.com>,
Kai-Heng Feng <kai.heng.feng@...onical.com>,
Paul Menzel <pmenzel@...gen.mpg.de>,
Nicholas Johnson <nicholas.johnson-opensource@...look.com.au>,
linux-pci@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v4 0/2] PCI: Add missing link delays
On Tue, Nov 12, 2019 at 12:16:15PM +0300, Mika Westerberg wrote:
> Hi,
>
> This is fourth version of the reworked PCIe link delay patch posted earlier
> here:
>
> v3: https://www.spinics.net/lists/linux-pci/msg88760.html
> v2: https://lore.kernel.org/linux-pci/20191004123947.11087-1-mika.westerberg@linux.intel.com/
> v1: https://patchwork.kernel.org/patch/11106611/
>
> Changes from v3:
>
> * Add tag from Rafael.
> * Hold pci_bus_sem when accessing bus->devices list.
>
> Changes from v2:
>
> * Rebased on top of pci.git/pci/pm.
> * Update references to PCIe 5.0 spec.
> * Take d3cold_delay if child devices into account. This allows ACPI _DSM
> to lower the delay.
> * Check for pci_dev->skip_bus_pm in pci_pm_resume_noirq().
> * Drop comment that mentions pciehp where
> pci_bridge_wait_for_secondary_bus() is called.
> * Use pcie_downstream_port() in pci_bridge_wait_for_secondary_bus().
>
> Based on the discussion around v2 there is a potential issue when restoring
> PCI_EXP_LNKCTL2 (regardless these patches) that we may need to retrain the
> link. This series does not include fix for that since it is not yet clear
> how we solve it. I can do that as a separate patch once we agree on the
> solution.
>
> I'm submitting these two now in hopes that we can get them included for
> v5.5 because there are systems out there that need them in order to
> function properly.
>
> Changes from v1:
>
> * Introduce pcie_wait_for_link_delay() in a separate patch
> * Tidy up changelog, remove some debug output
> * Rename pcie_wait_downstream_accessible() to
> pci_bridge_wait_for_secondary_bus() and make it generic to all PCI
> bridges.
> * Handle Tpvrh + Trhfa for conventional PCI even though we don't do PM
> for them right now.
> * Use pci_dbg() instead of dev_dbg().
> * Dropped check for pm_suspend_no_platform() and only check for D3cold.
> * Drop pcie_get_downstream_delay(), same delay applies equally to all
> devices (it is not entirely clear from the spec).
>
> Mika Westerberg (2):
> PCI: Introduce pcie_wait_for_link_delay()
> PCI: Add missing link delays required by the PCIe spec
>
> drivers/pci/pci-driver.c | 11 ++-
> drivers/pci/pci.c | 148 ++++++++++++++++++++++++++++++++++++---
> drivers/pci/pci.h | 1 +
> 3 files changed, 150 insertions(+), 10 deletions(-)
Applied to pci/pm for v5.5, thanks, Mika!
Powered by blists - more mailing lists