All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bjorn Helgaas <helgaas@kernel.org>
To: Jarkko Nikula <jarkko.nikula@linux.intel.com>
Cc: "Rafael J. Wysocki" <rafael@kernel.org>,
	Linux PCI <linux-pci@vger.kernel.org>,
	Linux PM <linux-pm@vger.kernel.org>,
	"Rafael J. Wysocki" <rjw@rjwysocki.net>,
	Mika Westerberg <mika.westerberg@linux.intel.com>,
	Jean Delvare <jdelvare@suse.de>, Wolfram Sang <wsa@the-dreams.de>,
	Stable <stable@vger.kernel.org>
Subject: Re: [PATCH v2] PCI / PM: Allow runtime PM without callback functions
Date: Wed, 12 Dec 2018 15:49:37 -0600	[thread overview]
Message-ID: <20181212214937.GI99796@google.com> (raw)
In-Reply-To: <14190b11-f7f1-3a27-1476-8b043bd72555@linux.intel.com>

On Wed, Dec 12, 2018 at 01:42:29PM +0200, Jarkko Nikula wrote:
> Hi
> 
> On 10/25/18 4:57 PM, Rafael J. Wysocki wrote:
> > On Tue, Oct 23, 2018 at 1:46 PM Jarkko Nikula
> > <jarkko.nikula@linux.intel.com> wrote:
> > > 
> > > Commit a9c8088c7988 ("i2c: i801: Don't restore config registers on
> > > runtime PM") nullified the runtime PM suspend/resume callback pointers
> > > while keeping the runtime PM enabled.
> > > 
> > > This causes that SMBus PCI device stays in D0 power state and sysfs
> > > /sys/bus/pci/devices/[SMBus PCI ID]/power/runtime_status shows "error"
> > > when the runtime PM framework attempts to autosuspend the device. This
> > > is due PCI bus runtime PM which checks for driver runtime PM callbacks
> > > and returns with -ENOSYS if they are not set.
> > > 
> > > Since i2c-i801.c don't need to do anything device specific beyond PCI
> > > device power state management Jean Delvare proposed if this can be fixed
> > > in the PCI subsystem core level rather than adding dummy runtime PM
> > > callback functions in the PCI drivers.
> > > 
> > > Change the pci_pm_runtime_suspend()/pci_pm_runtime_resume() semantics so
> > > that they allow change the PCI device power state during runtime PM
> > > transitions even if no runtime PM callback functions are defined.
> > > 
> > > This change fixes the runtime PM regression on i2c-i801.c.
> > > 
> > > It is not obvious why the code had hard requirements for the runtime PM
> > > callbacks. Test has been here since the code was introduced by the
> > > commit 6cbf82148ff2 ("PCI PM: Run-time callbacks for PCI bus type").
> > > 
> > > On the other hand similar change than this was done to generic runtime
> > > PM callbacks way back in the commit 05aa55dddb9e ("PM / Runtime: Lenient
> > > generic runtime pm callbacks").
> > > 
> > > Fixes: a9c8088c7988 ("i2c: i801: Don't restore config registers on runtime PM")
> > > Reported-by: Mika Westerberg <mika.westerberg@linux.intel.com>
> > > Cc: <stable@vger.kernel.org> # 4.18+
> > > Signed-off-by: Jarkko Nikula <jarkko.nikula@linux.intel.com>
> > 
> > Reviewed-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
> > 
> I guess this patch with Reviewed-by tags from Rafael and Jean got buried
> under other list traffic as I don't find this from pci.git or linux-next?

Sorry, I totally dropped the ball on this.  I normally would interpret
Rafael's reviewed-by as an indication that he intends me to pick it
up.  My only excuse is some travel and unexpected sick time that has
put me behind.

I applied this to pci/pm for v4.21, with Reviewed-by tags from Jean
and Rafael, thanks!

Bjorn

      parent reply	other threads:[~2018-12-12 21:49 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-10-23 11:45 [PATCH v2] PCI / PM: Allow runtime PM without callback functions Jarkko Nikula
2018-10-23 13:58 ` Jean Delvare
2018-10-25 13:57 ` Rafael J. Wysocki
2018-12-12 11:42   ` Jarkko Nikula
2018-12-12 17:30     ` Rafael J. Wysocki
2018-12-12 17:30       ` Rafael J. Wysocki
2018-12-12 21:49     ` Bjorn Helgaas [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20181212214937.GI99796@google.com \
    --to=helgaas@kernel.org \
    --cc=jarkko.nikula@linux.intel.com \
    --cc=jdelvare@suse.de \
    --cc=linux-pci@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=mika.westerberg@linux.intel.com \
    --cc=rafael@kernel.org \
    --cc=rjw@rjwysocki.net \
    --cc=stable@vger.kernel.org \
    --cc=wsa@the-dreams.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.