Message ID | 20191127053836.31624-1-drake@endlessm.com (mailing list archive) |
---|---|
State | Mainlined, archived |
Commit | 62fe23df067715a21c4aef44068efe7ceaa8f627 |
Delegated to: | Bjorn Helgaas |
Headers | show |
Series | [v2,1/2] PCI: add generic quirk function for increasing D3hot delay | expand |
On Wed, Nov 27, 2019 at 01:38:35PM +0800, Daniel Drake wrote: > Separate the D3 delay increase functionality out of quirk_radeon_pm() into > its own function so that it can be shared with other quirks, including > the AMD Ryzen XHCI quirk that will be introduced in a followup commit. > > Tweak the function name and message to indicate more clearly that the > delay relates to a D3hot-to-D0 transition. > > Signed-off-by: Daniel Drake <drake@endlessm.com> Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Hi Bjorn, On Wed, Nov 27, 2019 at 1:38 PM Daniel Drake <drake@endlessm.com> wrote: > Separate the D3 delay increase functionality out of quirk_radeon_pm() into > its own function so that it can be shared with other quirks, including > the AMD Ryzen XHCI quirk that will be introduced in a followup commit. > > Tweak the function name and message to indicate more clearly that the > delay relates to a D3hot-to-D0 transition. Any update on these pending patches? Thanks Daniel
On Wed, Nov 27, 2019 at 01:38:35PM +0800, Daniel Drake wrote: > Separate the D3 delay increase functionality out of quirk_radeon_pm() into > its own function so that it can be shared with other quirks, including > the AMD Ryzen XHCI quirk that will be introduced in a followup commit. > > Tweak the function name and message to indicate more clearly that the > delay relates to a D3hot-to-D0 transition. > > Signed-off-by: Daniel Drake <drake@endlessm.com> I applied both of these to pci/misc for v5.6, thanks! > --- > drivers/pci/quirks.c | 19 ++++++++++++------- > 1 file changed, 12 insertions(+), 7 deletions(-) > > v2: tweaked function name and message to emphasize D3hot state > > diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c > index 320255e5e8f89..3b4021e719530 100644 > --- a/drivers/pci/quirks.c > +++ b/drivers/pci/quirks.c > @@ -1871,16 +1871,21 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x2609, quirk_intel_pcie_pm); > DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x260a, quirk_intel_pcie_pm); > DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x260b, quirk_intel_pcie_pm); > > +static void quirk_d3hot_delay(struct pci_dev *dev, unsigned int delay) > +{ > + if (dev->d3_delay >= delay) > + return; > + > + dev->d3_delay = delay; > + pci_info(dev, "extending delay after power-on from D3hot to %d msec\n", > + dev->d3_delay); > +} > + > static void quirk_radeon_pm(struct pci_dev *dev) > { > if (dev->subsystem_vendor == PCI_VENDOR_ID_APPLE && > - dev->subsystem_device == 0x00e2) { > - if (dev->d3_delay < 20) { > - dev->d3_delay = 20; > - pci_info(dev, "extending delay after power-on from D3 to %d msec\n", > - dev->d3_delay); > - } > - } > + dev->subsystem_device == 0x00e2) > + quirk_d3hot_delay(dev, 20); > } > DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI, 0x6741, quirk_radeon_pm); > > -- > 2.20.1 >
diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c index 320255e5e8f89..3b4021e719530 100644 --- a/drivers/pci/quirks.c +++ b/drivers/pci/quirks.c @@ -1871,16 +1871,21 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x2609, quirk_intel_pcie_pm); DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x260a, quirk_intel_pcie_pm); DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x260b, quirk_intel_pcie_pm); +static void quirk_d3hot_delay(struct pci_dev *dev, unsigned int delay) +{ + if (dev->d3_delay >= delay) + return; + + dev->d3_delay = delay; + pci_info(dev, "extending delay after power-on from D3hot to %d msec\n", + dev->d3_delay); +} + static void quirk_radeon_pm(struct pci_dev *dev) { if (dev->subsystem_vendor == PCI_VENDOR_ID_APPLE && - dev->subsystem_device == 0x00e2) { - if (dev->d3_delay < 20) { - dev->d3_delay = 20; - pci_info(dev, "extending delay after power-on from D3 to %d msec\n", - dev->d3_delay); - } - } + dev->subsystem_device == 0x00e2) + quirk_d3hot_delay(dev, 20); } DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI, 0x6741, quirk_radeon_pm);
Separate the D3 delay increase functionality out of quirk_radeon_pm() into its own function so that it can be shared with other quirks, including the AMD Ryzen XHCI quirk that will be introduced in a followup commit. Tweak the function name and message to indicate more clearly that the delay relates to a D3hot-to-D0 transition. Signed-off-by: Daniel Drake <drake@endlessm.com> --- drivers/pci/quirks.c | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) v2: tweaked function name and message to emphasize D3hot state