# This is a BitKeeper generated diff -Nru style patch. # # ChangeSet # 2004/03/13 04:14:53-05:00 len.brown@intel.com # [ACPI] add boot parameters "acpi_osi=" and "acpi_serialize" # acpi_osi= will disable the _OSI method -- which by default # tells the BIOS to behave as if Windows is the OS. # acpi_serialize is for debugging AE_ALREADY_EXISTS failures # # drivers/acpi/osl.c # 2004/03/13 04:11:01-05:00 len.brown@intel.com +36 -0 # [ACPI] add "acpi_osi=" and "acpi_serialize" # # Documentation/kernel-parameters.txt # 2004/03/13 04:11:01-05:00 len.brown@intel.com +4 -0 # [ACPI] add "acpi_osi=" and "acpi_serialize" # diff -Nru a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt --- a/Documentation/kernel-parameters.txt Sat Mar 13 04:14:59 2004 +++ b/Documentation/kernel-parameters.txt Sat Mar 13 04:14:59 2004 @@ -116,6 +116,10 @@ acpi_irq_isa= [HW,ACPI] If irq_balance, Mark listed IRQs used by ISA Format: ,... + acpi_osi= [HW,ACPI] empty param disables _OSI + + acpi_serialize [HW,ACPI] force serialization of AML methods + ad1816= [HW,OSS] Format: ,,, See also Documentation/sound/oss/AD1816. diff -Nru a/drivers/acpi/osl.c b/drivers/acpi/osl.c --- a/drivers/acpi/osl.c Sat Mar 13 04:14:59 2004 +++ b/drivers/acpi/osl.c Sat Mar 13 04:14:59 2004 @@ -1012,3 +1012,39 @@ } __setup("acpi_os_name=", acpi_os_name_setup); + +/* + * _OSI control + * empty string disables _OSI + * TBD additional string adds to _OSI + */ +int __init +acpi_osi_setup(char *str) +{ + if (str == NULL || *str == '\0') { + printk(KERN_INFO PREFIX "_OSI method disabled\n"); + acpi_gbl_create_osi_method = FALSE; + } else + { + /* TBD */ + printk(KERN_ERR PREFIX "_OSI additional string ignored -- %s\n", str); + } + + return 1; +} + +__setup("acpi_osi=", acpi_osi_setup); + +/* enable serialization to combat AE_ALREADY_EXISTS errors */ +int __init +acpi_serialize_setup(char *str) +{ + printk(KERN_INFO PREFIX "serialize enabled\n"); + + acpi_gbl_all_methods_serialized = TRUE; + + return 1; +} + +__setup("acpi_serialize", acpi_serialize_setup); +