summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShaohua Li <shaohua.li@intel.com>2007-04-25 11:05:12 +0800
committerLen Brown <len.brown@intel.com>2007-04-25 01:13:47 -0400
commitf8993aff8b4de0317c6e081802ca5c86c449fef2 (patch)
treeaa0bd506c8887a4be0fafd6d005b515a899f708f
parenta23cf14b161b8deeb0f701d577a0e8be6365e247 (diff)
downloadlinux-sh-f8993aff8b4de0317c6e081802ca5c86c449fef2.tar.gz
ACPI: Disable MSI on request of FADT
The ACPI spec defines the bit and Microsoft uses it, so Linux must use it too. Signed-off-by: Shaohua Li <shaohua.li@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
-rw-r--r--drivers/pci/pci-acpi.c4
-rw-r--r--include/acpi/actbl.h1
2 files changed, 5 insertions, 0 deletions
diff --git a/drivers/pci/pci-acpi.c b/drivers/pci/pci-acpi.c
index a064f36a0805..b5ac810404c0 100644
--- a/drivers/pci/pci-acpi.c
+++ b/drivers/pci/pci-acpi.c
@@ -317,6 +317,10 @@ static int __init acpi_pci_init(void)
{
int ret;
+ if (acpi_gbl_FADT.boot_flags & BAF_MSI_NOT_SUPPORTED) {
+ printk(KERN_INFO"ACPI FADT declares the system doesn't support MSI, so disable it\n");
+ pci_no_msi();
+ }
ret = register_acpi_bus_type(&acpi_pci_bus);
if (ret)
return 0;
diff --git a/include/acpi/actbl.h b/include/acpi/actbl.h
index 09469e7db6a5..955adfb8d64c 100644
--- a/include/acpi/actbl.h
+++ b/include/acpi/actbl.h
@@ -276,6 +276,7 @@ enum acpi_prefered_pm_profiles {
#define BAF_LEGACY_DEVICES 0x0001
#define BAF_8042_KEYBOARD_CONTROLLER 0x0002
+#define BAF_MSI_NOT_SUPPORTED 0x0008
#define FADT2_REVISION_ID 3
#define FADT2_MINUS_REVISION_ID 2