Re: [PATCH v4 0/9] PCI/PM: Always disable PTM for all devices during suspend

Bjorn Helgaas
2022-09-12T20:32:23Z

On Mon, Sep 12, 2022 at 01:15:59PM -0700, Rajvi Jingar wrote:
> On 9/9/22 13:24, Bjorn Helgaas wrote:
> > From: Bjorn Helgaas<bhelgaas@google.com>
> >
> > We currently disable PTM for Root Ports during suspend. Leaving PTM
> > enabled for downstream devices causes UR errors if they send PTM Requests
> > to upstream devices that have PTM disabled.
> >
> > The intent of this series is to:
> >
> > - Unconditionally disable PTM during suspend (even if the driver saves
> > its own state) by moving the disable from pci_prepare_to_sleep() to
> > pci_pm_suspend().
> >
> > - Disable PTM for all devices by removing the Root Port condition and
> > doing it early in the suspend paths.
> >
> > - Explicitly re-enable PTM during resume.
> >
> > Changes between v3 and v4:
> > - Use u16 for ptm_cap
> > - Add kernel-doc for pci_enable_ptm() and pci_disable_ptm() (exported
> > functions)
> > - Drop "Preserve PTM Root Select" (unnecessary since enabling PTM sets
> > Root Select when needed)
> > - Squash these three patches into one because they make more sense that
> > way:
> > PCI/PTM: Add suspend/resume
> > PCI/PTM: Add pci_enable_ptm() wrapper
> > PCI/PTM: Add pci_disable_ptm() wrapper
> > - Add "PCI/PTM: Preserve RsvdP bits in PTM Control register"
> > - Add "PCI/PTM: Consolidate PTM interface declarations"
> >
> > Bjorn Helgaas (9):
> > PCI/PTM: Cache PTM Capability offset
> > PCI/PTM: Add pci_upstream_ptm() helper
> > PCI/PTM: Separate configuration and enable
> > PCI/PTM: Add pci_suspend_ptm() and pci_resume_ptm()
> > PCI/PTM: Move pci_ptm_info() body into its only caller
> > PCI/PTM: Preserve RsvdP bits in PTM Control register
> > PCI/PTM: Reorder functions in logical order
> > PCI/PTM: Consolidate PTM interface declarations
> > PCI/PM: Always disable PTM for all devices during suspend
>
> Looks good. It fixes the issue on Dell Precision 5530 with Coffee Lake
> CPU platforms to get improved residency in low power idle states.
>
> Tested-by:rajvi.jingar@linux.intel.com

Thanks a lot for testing this!

It's best if you can send plain-text mail to the lists. This was a
multi-part message, which the vger mailing lists reject:

http://vger.kernel.org/majordomo-info.html

Bjorn