All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bjorn Helgaas <helgaas@kernel.org>
To: Mika Westerberg <mika.westerberg@linux.intel.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>,
	"Rafael J. Wysocki" <rjw@rjwysocki.net>,
	Qipeng Zha <qipeng.zha@intel.com>, Qi Zheng <qi.zheng@intel.com>,
	Dave Airlie <airlied@gmail.com>,
	Mathias Nyman <mathias.nyman@intel.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Lukas Wunner <lukas@wunner.de>,
	Andreas Noever <andreas.noever@gmail.com>,
	Peter Wu <peter@lekensteyn.nl>,
	Valdis Kletnieks <Valdis.Kletnieks@vt.edu>,
	linux-pci@vger.kernel.org, linux-pm@vger.kernel.org
Subject: Re: [PATCH v6 0/5] PCI: Add support for suspending (including runtime) of PCIe ports
Date: Mon, 13 Jun 2016 15:05:35 -0500	[thread overview]
Message-ID: <20160613200535.GA14934@localhost> (raw)
In-Reply-To: <1464855435-32960-1-git-send-email-mika.westerberg@linux.intel.com>

On Thu, Jun 02, 2016 at 11:17:10AM +0300, Mika Westerberg wrote:
> Current Linux PCI core does not do any kind of power management to PCIe
> ports. This means that we waste energy and consume laptop battery even if
> the port has nothing connected to. These patches aim to change that to the
> right direction.
> 
> Previous versions of the patches can be found below:
> 
>   v1: http://www.spinics.net/lists/linux-pci/msg49313.html
>   v2: http://www.spinics.net/lists/linux-pci/msg50167.html
>   v3: http://www.spinics.net/lists/linux-pci/msg50345.html
>   v4: http://www.spinics.net/lists/linux-pci/msg50665.html
>   v5: http://www.spinics.net/lists/linux-pci/msg50803.html
> 
> This assumes that recent (starting from 2015) PCIe ports are capable of
> transition to D3hot/D3cold. We add a new flag to struct pci_dev 'bridge_d3'
> that is set whenever the PCI core thinks the port can be put to D3. The
> check in pci_pm_suspend_noirq() is then extended to cover devices where
> 'bridge_d3' is set.
> 
> We then add two new functions pci_bridge_d3_device_changed/removed(). These
> are used to set and clear 'bridge_d3' whenever there is a change in device
> power management policy (or if the device is removed). For example when
> userspace forbids the device to enter D3cold pci_bridge_d3_device_changed()
> will clear 'bridge_d3' of the upstream bridge.
> 
> For all PCI ports where 'bridge_d3' is set we also enable and unblock
> runtime PM automatically. Only exception is when the PCIe port claims to
> support hotplug. More information about that is in the changelog of
> patch [5/5].
> 
> Since this also touches xhci, I'm adding Mathias and Greg to check if the
> change looks reasonable.
> 
> Bjorn, if you are fine with these patches, it would be nice to get these to
> linux-next for better testing coverage.

Applied to pci/pm with Rafael's additional acks, thanks, Mika!

      parent reply	other threads:[~2016-06-13 20:05 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-06-02  8:17 [PATCH v6 0/5] PCI: Add support for suspending (including runtime) of PCIe ports Mika Westerberg
2016-06-02  8:17 ` [PATCH v6 1/5] PCI: Don't clear d3cold_allowed for " Mika Westerberg
2016-06-02  8:17 ` [PATCH v6 2/5] PCI: Put PCIe ports into D3 during suspend Mika Westerberg
2016-06-02  8:17 ` [PATCH v6 3/5] PCI: Power on bridges before scanning new devices Mika Westerberg
2016-06-02 12:26   ` Rafael J. Wysocki
2016-06-02  8:17 ` [PATCH v6 4/5] ACPI / hotplug / PCI: Runtime resume bridge before rescan Mika Westerberg
2016-06-02 12:27   ` Rafael J. Wysocki
2016-06-02  8:17 ` [PATCH v6 5/5] PCI: Add runtime PM support for PCIe ports Mika Westerberg
2016-06-04 23:27 ` [PATCH v6 0/5] PCI: Add support for suspending (including runtime) of " Lukas Wunner
2016-06-06  9:43   ` Mika Westerberg
2016-06-13 20:05 ` 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=20160613200535.GA14934@localhost \
    --to=helgaas@kernel.org \
    --cc=Valdis.Kletnieks@vt.edu \
    --cc=airlied@gmail.com \
    --cc=andreas.noever@gmail.com \
    --cc=bhelgaas@google.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=lukas@wunner.de \
    --cc=mathias.nyman@intel.com \
    --cc=mika.westerberg@linux.intel.com \
    --cc=peter@lekensteyn.nl \
    --cc=qi.zheng@intel.com \
    --cc=qipeng.zha@intel.com \
    --cc=rjw@rjwysocki.net \
    /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.