diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-06-27 07:41:04 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-06-27 07:41:04 -0700 |
commit | dee70a32fa90cd05a5e34d03a48d549473569101 (patch) | |
tree | 1aab213cb310996fd2f0a324ef5b0c61d3d2e0e6 /drivers/pci | |
parent | 29ccb201a28f20885c90954152db8421a2efe779 (diff) | |
parent | b27759f880018b0cd43543dc94c921341b64b5ec (diff) | |
download | kernel_samsung_smdk4412-dee70a32fa90cd05a5e34d03a48d549473569101.zip kernel_samsung_smdk4412-dee70a32fa90cd05a5e34d03a48d549473569101.tar.gz kernel_samsung_smdk4412-dee70a32fa90cd05a5e34d03a48d549473569101.tar.bz2 |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6:
PCI/PM: Do not use native PCIe PME by default
Diffstat (limited to 'drivers/pci')
-rw-r--r-- | drivers/pci/pcie/pme/pcie_pme.c | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/drivers/pci/pcie/pme/pcie_pme.c b/drivers/pci/pcie/pme/pcie_pme.c index aac285a..d672a0a 100644 --- a/drivers/pci/pcie/pme/pcie_pme.c +++ b/drivers/pci/pcie/pme/pcie_pme.c @@ -34,7 +34,7 @@ * being registered. Consequently, the interrupt-based PCIe PME signaling will * not be used by any PCIe root ports in that case. */ -static bool pcie_pme_disabled; +static bool pcie_pme_disabled = true; /* * The PCI Express Base Specification 2.0, Section 6.1.8, states the following: @@ -64,12 +64,19 @@ bool pcie_pme_msi_disabled; static int __init pcie_pme_setup(char *str) { - if (!strcmp(str, "off")) - pcie_pme_disabled = true; - else if (!strcmp(str, "force")) + if (!strncmp(str, "auto", 4)) + pcie_pme_disabled = false; + else if (!strncmp(str, "force", 5)) pcie_pme_force_enable = true; - else if (!strcmp(str, "nomsi")) - pcie_pme_msi_disabled = true; + + str = strchr(str, ','); + if (str) { + str++; + str += strspn(str, " \t"); + if (*str && !strcmp(str, "nomsi")) + pcie_pme_msi_disabled = true; + } + return 1; } __setup("pcie_pme=", pcie_pme_setup); |