[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <850CC1CD-2043-4C32-8BB1-5F5BAC1DDF55@canonical.com>
Date: Thu, 23 May 2019 03:05:08 +0800
From: Kai Heng Feng <kai.heng.feng@...onical.com>
To: Lukas Wunner <lukas@...ner.de>
Cc: Alan Stern <stern@...land.harvard.edu>,
Bjorn Helgaas <helgaas@...nel.org>,
Rafael Wysocki <rafael.j.wysocki@...el.com>,
linux-pci@...r.kernel.org, LKML <linux-kernel@...r.kernel.org>,
Mathias Nyman <mathias.nyman@...el.com>,
linux-usb@...r.kernel.org
Subject: Re: [PATCH] PCI / PM: Don't runtime suspend when device only supports
wakeup from D0
> On May 23, 2019, at 2:53 AM, Lukas Wunner <lukas@...ner.de> wrote:
>
> On Wed, May 22, 2019 at 02:39:56PM -0400, Alan Stern wrote:
>> According to Kai, PME signalling doesn't work in D0 -- or at least, it
>> is _documented_ not to work in D0 -- even though it is enabled and the
>> device claims to support it.
>>
>> In any case, I don't really see any point in "runtime suspending" a
>> device while leaving it in D0. We might as well just leave it alone.
>
> There may be devices whose drivers are able to reduce power consumption
> through some device-specific means when runtime suspending, even though
> the device remains in PCI_D0. The patch would cause a power regression
> for those.
>
> In particular, pci_target_state() returns PCI_D0 if the device lacks the
> PM capability.
So an explicit device_can_wakeup() check before calling pci_target_state()
is needed to avoid the case you described.
I’ll add this in patch v2.
Kai-Heng
>
> Thanks,
>
> Lukas
Powered by blists - more mailing lists