From: okaya@codeaurora.org (Sinan Kaya)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH V5 0/4] PCI/ASPM: reconfigure ASPM following hotplug for POLICY_DEFAULT
Date: Tue, 28 Mar 2017 00:37:31 -0400 [thread overview]
Message-ID: <f062dc8f-df66-bfd8-a0d7-50ac1cadf975@codeaurora.org> (raw)
In-Reply-To: <1490477893-9517-1-git-send-email-okaya@codeaurora.org>
Hi Mayurkumkar,
On 3/25/2017 5:38 PM, Sinan Kaya wrote:
> When the operating system is booted with the default ASPM policy
> (POLICY_DEFAULT), current code is querying the enable/disable
> states from ASPM registers to determine the policy.
>
> For example, a BIOS could set the power saving state to performance
> and clear all ASPM control registers. A balanced ASPM policy could
> enable L0s and disable L1. A power conscious BIOS could enable both
> L0s and L1 to trade off latency and performance vs. power.
>
> After hotplug removal, pcie_aspm_exit_link_state() function clears
> the ASPM registers. An insertion following hotplug removal reads
> incorrect policy as ASPM disabled even though ASPM was enabled
> during boot.
>
> This is caused by the fact that same function is used for reconfiguring
> ASPM regardless of the power on state.
>
> ------------------------
> Changes from v4 (http://www.spinics.net/lists/linux-pci/msg59245.html)
> ------------------------
> - pci_aspm_init(): Fix function comment. Called for every device we
> enumerate.
> Upstream link partner: Shouldn't need to check pdev->link_state
> (should always be NULL for a brand-new device).
>
> - pcie_aspm_init_link_state(): Called for bridges (upstream end of
> link) after all children have been enumerated. No longer needs to
> check aspm_support_enabled or pdev->has_secondary_link or the VIA
> quirk: pci_aspm_init() already checked that stuff, so we only need
> to check pdev->link_state here.
>
> - split the last patch into two
> PCI/ASPM: move link_state cleanup to bridge remove
> PCI/ASPM: save power on values during bridge init
>
> - create bugzilla (https://bugzilla.kernel.org/show_bug.cgi?id=194895)
> - add fixes tags
>
> Sinan Kaya (4):
> PCI/ASPM: introduce pci_aspm_init() and add to pci_init_capabilities()
> PCI/ASPM: add init hook to device_add
> PCI/ASPM: save power on values during bridge init
> PCI/ASPM: move link_state cleanup to bridge remove
>
> drivers/pci/pcie/aspm.c | 93 +++++++++++++++++++++++++++++++++----------------
> drivers/pci/probe.c | 3 ++
> drivers/pci/remove.c | 3 +-
> include/linux/pci.h | 2 ++
> 4 files changed, 69 insertions(+), 32 deletions(-)
>
Can you test this on your system and provide your tested-by if all good?
Sinan
--
Sinan Kaya
Qualcomm Datacenter Technologies, Inc. as an affiliate of Qualcomm Technologies, Inc.
Qualcomm Technologies, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project.
next prev parent reply other threads:[~2017-03-28 4:37 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-03-25 21:38 [PATCH V5 0/4] PCI/ASPM: reconfigure ASPM following hotplug for POLICY_DEFAULT Sinan Kaya
2017-03-25 21:38 ` [PATCH V5 1/4] PCI/ASPM: introduce pci_aspm_init() and add to pci_init_capabilities() Sinan Kaya
2017-03-25 21:38 ` [PATCH V5 2/4] PCI/ASPM: add init hook to device_add Sinan Kaya
2017-03-25 21:38 ` [PATCH V5 3/4] PCI/ASPM: save power on values during bridge init Sinan Kaya
2017-03-25 21:38 ` [PATCH V5 4/4] PCI/ASPM: move link_state cleanup to bridge remove Sinan Kaya
2017-03-28 4:37 ` Sinan Kaya [this message]
2017-03-28 6:02 ` [PATCH V5 0/4] PCI/ASPM: reconfigure ASPM following hotplug for POLICY_DEFAULT Patel, Mayurkumar
2017-03-28 12:52 ` Sinan Kaya
2017-03-28 13:04 ` Sinan Kaya
2017-03-29 13:18 ` Sinan Kaya
2017-03-29 17:27 ` Patel, Mayurkumar
2017-03-29 19:09 ` Sinan Kaya
2017-03-29 20:16 ` Patel, Mayurkumar
2017-03-29 20:36 ` Sinan Kaya
2017-03-29 23:08 ` Sinan Kaya
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=f062dc8f-df66-bfd8-a0d7-50ac1cadf975@codeaurora.org \
--to=okaya@codeaurora.org \
--cc=linux-arm-kernel@lists.infradead.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).