[RESEND] PCI: Allow pcie_aspm=force to work even when FADT indicates it is unsupported

Submitted by Colin King on Nov. 27, 2012, 2:09 p.m.

Details

Message ID 1354025380-19092-1-git-send-email-colin.king@canonical.com
State Accepted
Headers show

Commit Message

Colin King Nov. 27, 2012, 2:09 p.m.
From: Colin Ian King <colin.king@canonical.com>

BugLink: http://bugs.launchpad.net/bugs/962038

Right now using pcie_aspm=force will not enable ASPM if the FADT indicates
ASPM is unsupported.  However, the semantics of force should probably allow
for this, especially as they did before the ASPM disable rework with commit
3c076351c4027a56d5005a39a0b518a4ba393ce2

This patch just skips the clearing of any ASPM setup that the firmware has
carried out on this bus if pcie_aspm=force is being used.

Signed-off-by: Colin Ian King <colin.king@canonical.com>
---
 drivers/pci/pcie/aspm.c | 3 +++
 1 file changed, 3 insertions(+)

Comments

Bjorn Helgaas Jan. 14, 2013, 11:33 p.m.
On Tue, Nov 27, 2012 at 7:09 AM, Colin King <colin.king@canonical.com> wrote:
> From: Colin Ian King <colin.king@canonical.com>
>
> BugLink: http://bugs.launchpad.net/bugs/962038
>
> Right now using pcie_aspm=force will not enable ASPM if the FADT indicates
> ASPM is unsupported.  However, the semantics of force should probably allow
> for this, especially as they did before the ASPM disable rework with commit
> 3c076351c4027a56d5005a39a0b518a4ba393ce2
>
> This patch just skips the clearing of any ASPM setup that the firmware has
> carried out on this bus if pcie_aspm=force is being used.
>
> Signed-off-by: Colin Ian King <colin.king@canonical.com>

I applied this to my for-linus branch, so it should appear in v3.8.
Thanks, and sorry for the delay in applying this.

Bjorn

> ---
>  drivers/pci/pcie/aspm.c | 3 +++
>  1 file changed, 3 insertions(+)
>
> diff --git a/drivers/pci/pcie/aspm.c b/drivers/pci/pcie/aspm.c
> index 213753b..449f257 100644
> --- a/drivers/pci/pcie/aspm.c
> +++ b/drivers/pci/pcie/aspm.c
> @@ -773,6 +773,9 @@ void pcie_clear_aspm(struct pci_bus *bus)
>  {
>         struct pci_dev *child;
>
> +       if (aspm_force)
> +               return;
> +
>         /*
>          * Clear any ASPM setup that the firmware has carried out on this bus
>          */
> --
> 1.8.0
>
--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch hide | download patch | download mbox

diff --git a/drivers/pci/pcie/aspm.c b/drivers/pci/pcie/aspm.c
index 213753b..449f257 100644
--- a/drivers/pci/pcie/aspm.c
+++ b/drivers/pci/pcie/aspm.c
@@ -773,6 +773,9 @@  void pcie_clear_aspm(struct pci_bus *bus)
 {
 	struct pci_dev *child;
 
+	if (aspm_force)
+		return;
+
 	/*
 	 * Clear any ASPM setup that the firmware has carried out on this bus
 	 */