Loading MAINTAINERS +5 −0 Original line number Diff line number Diff line Loading @@ -3652,6 +3652,11 @@ W: http://0pointer.de/lennart/tchibo.html S: Maintained F: drivers/platform/x86/msi-laptop.c MSI WMI SUPPORT M: Anisse Astier <anisse@astier.eu> S: Supported F: drivers/platform/x86/msi-wmi.c MULTIFUNCTION DEVICES (MFD) M: Samuel Ortiz <sameo@linux.intel.com> T: git git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6.git Loading arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c +3 −1 Original line number Diff line number Diff line Loading @@ -190,9 +190,11 @@ static void do_drv_write(void *_cmd) static void drv_read(struct drv_cmd *cmd) { int err; cmd->val = 0; smp_call_function_single(cpumask_any(cmd->mask), do_drv_read, cmd, 1); err = smp_call_function_any(cmd->mask, do_drv_read, cmd, 1); WARN_ON_ONCE(err); /* smp_call_function_any() was buggy? */ } static void drv_write(struct drv_cmd *cmd) Loading drivers/ata/Kconfig +0 −1 Original line number Diff line number Diff line Loading @@ -40,7 +40,6 @@ config ATA_VERBOSE_ERROR config ATA_ACPI bool "ATA ACPI Support" depends on ACPI && PCI select ACPI_DOCK default y help This option adds support for ATA-related ACPI objects. Loading drivers/platform/x86/acer-wmi.c +0 −3 Original line number Diff line number Diff line Loading @@ -96,9 +96,6 @@ struct acer_quirks { MODULE_ALIAS("wmi:67C3371D-95A3-4C37-BB61-DD47B491DAAB"); MODULE_ALIAS("wmi:6AF4F258-B401-42fd-BE91-3D4AC2D7C0D3"); /* Temporary workaround until the WMI sysfs interface goes in */ MODULE_ALIAS("dmi:*:*Acer*:*:"); /* * Interface capability flags */ Loading drivers/platform/x86/acerhdf.c +46 −22 Original line number Diff line number Diff line Loading @@ -52,7 +52,7 @@ */ #undef START_IN_KERNEL_MODE #define DRV_VER "0.5.20" #define DRV_VER "0.5.22" /* * According to the Atom N270 datasheet, Loading Loading @@ -156,19 +156,25 @@ static const struct bios_settings_t bios_tbl[] = { {"Acer", "AOA150", "v0.3310", 0x55, 0x58, {0x20, 0x20, 0x00} }, /* Acer 1410 */ {"Acer", "Aspire 1410", "v0.3120", 0x55, 0x58, {0x9e, 0x9e, 0x00} }, /* special BIOS / other */ {"Acer", "Aspire 1410", "v1.3303", 0x55, 0x58, {0x9e, 0x9e, 0x00} }, /* Acer 1810xx */ {"Acer", "Aspire 1810TZ", "v0.3120", 0x55, 0x58, {0x9e, 0x9e, 0x00} }, {"Acer", "Aspire 1810T", "v0.3120", 0x55, 0x58, {0x9e, 0x9e, 0x00} }, {"Acer", "Aspire 1810T", "v1.3303", 0x55, 0x58, {0x9e, 0x9e, 0x00} }, {"Acer", "Aspire 1810TZ", "v1.3303", 0x55, 0x58, {0x9e, 0x9e, 0x00} }, /* Gateway */ {"Gateway", "AOA110", "v0.3103", 0x55, 0x58, {0x21, 0x21, 0x00} }, {"Gateway", "AOA150", "v0.3103", 0x55, 0x58, {0x20, 0x20, 0x00} }, {"Gateway ", "LT31 ", "v1.3103 ", 0x55, 0x58, {0x10, 0x0f, 0x00} }, {"Gateway ", "LT31 ", "v1.3201 ", 0x55, 0x58, {0x10, 0x0f, 0x00} }, {"Gateway ", "LT31 ", "v1.3302 ", 0x55, 0x58, {0x10, 0x0f, 0x00} }, {"Gateway", "LT31", "v1.3103", 0x55, 0x58, {0x10, 0x0f, 0x00} }, {"Gateway", "LT31", "v1.3201", 0x55, 0x58, {0x10, 0x0f, 0x00} }, {"Gateway", "LT31", "v1.3302", 0x55, 0x58, {0x10, 0x0f, 0x00} }, /* Packard Bell */ {"Packard Bell", "DOA150", "v0.3104", 0x55, 0x58, {0x21, 0x21, 0x00} }, {"Packard Bell", "DOA150", "v0.3105", 0x55, 0x58, {0x20, 0x20, 0x00} }, {"Packard Bell", "AOA110", "v0.3105", 0x55, 0x58, {0x21, 0x21, 0x00} }, {"Packard Bell", "AOA150", "v0.3105", 0x55, 0x58, {0x20, 0x20, 0x00} }, {"Packard Bell", "DOTMU", "v1.3303", 0x55, 0x58, {0x9e, 0x9e, 0x00} }, {"Packard Bell", "DOTMU", "v0.3120", 0x55, 0x58, {0x9e, 0x9e, 0x00} }, /* pewpew-terminator */ {"", "", "", 0, 0, {0, 0, 0} } }; Loading Loading @@ -486,13 +492,26 @@ static struct platform_driver acerhdf_driver = { .remove = acerhdf_remove, }; /* checks if str begins with start */ static int str_starts_with(const char *str, const char *start) { unsigned long str_len = 0, start_len = 0; str_len = strlen(str); start_len = strlen(start); if (str_len >= start_len && !strncmp(str, start, start_len)) return 1; return 0; } /* check hardware */ static int acerhdf_check_hardware(void) { char const *vendor, *version, *product; int i; unsigned long prod_len = 0; const struct bios_settings_t *bt = NULL; /* get BIOS data */ vendor = dmi_get_system_info(DMI_SYS_VENDOR); Loading @@ -514,20 +533,20 @@ static int acerhdf_check_hardware(void) kernelmode = 0; } prod_len = strlen(product); if (verbose) pr_info("BIOS info: %s %s, product: %s\n", vendor, version, product); /* search BIOS version and vendor in BIOS settings table */ for (i = 0; bios_tbl[i].version[0]; i++) { if (strlen(bios_tbl[i].product) >= prod_len && !strncmp(bios_tbl[i].product, product, strlen(bios_tbl[i].product)) && !strcmp(bios_tbl[i].vendor, vendor) && !strcmp(bios_tbl[i].version, version)) { bios_cfg = &bios_tbl[i]; for (bt = bios_tbl; bt->vendor[0]; bt++) { /* * check if actual hardware BIOS vendor, product and version * IDs start with the strings of BIOS table entry */ if (str_starts_with(vendor, bt->vendor) && str_starts_with(product, bt->product) && str_starts_with(version, bt->version)) { bios_cfg = bt; break; } } Loading Loading @@ -640,9 +659,14 @@ static void __exit acerhdf_exit(void) MODULE_LICENSE("GPL"); MODULE_AUTHOR("Peter Feuerer"); MODULE_DESCRIPTION("Aspire One temperature and fan driver"); MODULE_ALIAS("dmi:*:*Acer*:*:"); MODULE_ALIAS("dmi:*:*Gateway*:*:"); MODULE_ALIAS("dmi:*:*Packard Bell*:*:"); MODULE_ALIAS("dmi:*:*Acer*:pnAOA*:"); MODULE_ALIAS("dmi:*:*Acer*:pnAspire 1410*:"); MODULE_ALIAS("dmi:*:*Acer*:pnAspire 1810*:"); MODULE_ALIAS("dmi:*:*Gateway*:pnAOA*:"); MODULE_ALIAS("dmi:*:*Gateway*:pnLT31*:"); MODULE_ALIAS("dmi:*:*Packard Bell*:pnAOA*:"); MODULE_ALIAS("dmi:*:*Packard Bell*:pnDOA*:"); MODULE_ALIAS("dmi:*:*Packard Bell*:pnDOTMU*:"); module_init(acerhdf_init); module_exit(acerhdf_exit); Loading
MAINTAINERS +5 −0 Original line number Diff line number Diff line Loading @@ -3652,6 +3652,11 @@ W: http://0pointer.de/lennart/tchibo.html S: Maintained F: drivers/platform/x86/msi-laptop.c MSI WMI SUPPORT M: Anisse Astier <anisse@astier.eu> S: Supported F: drivers/platform/x86/msi-wmi.c MULTIFUNCTION DEVICES (MFD) M: Samuel Ortiz <sameo@linux.intel.com> T: git git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6.git Loading
arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c +3 −1 Original line number Diff line number Diff line Loading @@ -190,9 +190,11 @@ static void do_drv_write(void *_cmd) static void drv_read(struct drv_cmd *cmd) { int err; cmd->val = 0; smp_call_function_single(cpumask_any(cmd->mask), do_drv_read, cmd, 1); err = smp_call_function_any(cmd->mask, do_drv_read, cmd, 1); WARN_ON_ONCE(err); /* smp_call_function_any() was buggy? */ } static void drv_write(struct drv_cmd *cmd) Loading
drivers/ata/Kconfig +0 −1 Original line number Diff line number Diff line Loading @@ -40,7 +40,6 @@ config ATA_VERBOSE_ERROR config ATA_ACPI bool "ATA ACPI Support" depends on ACPI && PCI select ACPI_DOCK default y help This option adds support for ATA-related ACPI objects. Loading
drivers/platform/x86/acer-wmi.c +0 −3 Original line number Diff line number Diff line Loading @@ -96,9 +96,6 @@ struct acer_quirks { MODULE_ALIAS("wmi:67C3371D-95A3-4C37-BB61-DD47B491DAAB"); MODULE_ALIAS("wmi:6AF4F258-B401-42fd-BE91-3D4AC2D7C0D3"); /* Temporary workaround until the WMI sysfs interface goes in */ MODULE_ALIAS("dmi:*:*Acer*:*:"); /* * Interface capability flags */ Loading
drivers/platform/x86/acerhdf.c +46 −22 Original line number Diff line number Diff line Loading @@ -52,7 +52,7 @@ */ #undef START_IN_KERNEL_MODE #define DRV_VER "0.5.20" #define DRV_VER "0.5.22" /* * According to the Atom N270 datasheet, Loading Loading @@ -156,19 +156,25 @@ static const struct bios_settings_t bios_tbl[] = { {"Acer", "AOA150", "v0.3310", 0x55, 0x58, {0x20, 0x20, 0x00} }, /* Acer 1410 */ {"Acer", "Aspire 1410", "v0.3120", 0x55, 0x58, {0x9e, 0x9e, 0x00} }, /* special BIOS / other */ {"Acer", "Aspire 1410", "v1.3303", 0x55, 0x58, {0x9e, 0x9e, 0x00} }, /* Acer 1810xx */ {"Acer", "Aspire 1810TZ", "v0.3120", 0x55, 0x58, {0x9e, 0x9e, 0x00} }, {"Acer", "Aspire 1810T", "v0.3120", 0x55, 0x58, {0x9e, 0x9e, 0x00} }, {"Acer", "Aspire 1810T", "v1.3303", 0x55, 0x58, {0x9e, 0x9e, 0x00} }, {"Acer", "Aspire 1810TZ", "v1.3303", 0x55, 0x58, {0x9e, 0x9e, 0x00} }, /* Gateway */ {"Gateway", "AOA110", "v0.3103", 0x55, 0x58, {0x21, 0x21, 0x00} }, {"Gateway", "AOA150", "v0.3103", 0x55, 0x58, {0x20, 0x20, 0x00} }, {"Gateway ", "LT31 ", "v1.3103 ", 0x55, 0x58, {0x10, 0x0f, 0x00} }, {"Gateway ", "LT31 ", "v1.3201 ", 0x55, 0x58, {0x10, 0x0f, 0x00} }, {"Gateway ", "LT31 ", "v1.3302 ", 0x55, 0x58, {0x10, 0x0f, 0x00} }, {"Gateway", "LT31", "v1.3103", 0x55, 0x58, {0x10, 0x0f, 0x00} }, {"Gateway", "LT31", "v1.3201", 0x55, 0x58, {0x10, 0x0f, 0x00} }, {"Gateway", "LT31", "v1.3302", 0x55, 0x58, {0x10, 0x0f, 0x00} }, /* Packard Bell */ {"Packard Bell", "DOA150", "v0.3104", 0x55, 0x58, {0x21, 0x21, 0x00} }, {"Packard Bell", "DOA150", "v0.3105", 0x55, 0x58, {0x20, 0x20, 0x00} }, {"Packard Bell", "AOA110", "v0.3105", 0x55, 0x58, {0x21, 0x21, 0x00} }, {"Packard Bell", "AOA150", "v0.3105", 0x55, 0x58, {0x20, 0x20, 0x00} }, {"Packard Bell", "DOTMU", "v1.3303", 0x55, 0x58, {0x9e, 0x9e, 0x00} }, {"Packard Bell", "DOTMU", "v0.3120", 0x55, 0x58, {0x9e, 0x9e, 0x00} }, /* pewpew-terminator */ {"", "", "", 0, 0, {0, 0, 0} } }; Loading Loading @@ -486,13 +492,26 @@ static struct platform_driver acerhdf_driver = { .remove = acerhdf_remove, }; /* checks if str begins with start */ static int str_starts_with(const char *str, const char *start) { unsigned long str_len = 0, start_len = 0; str_len = strlen(str); start_len = strlen(start); if (str_len >= start_len && !strncmp(str, start, start_len)) return 1; return 0; } /* check hardware */ static int acerhdf_check_hardware(void) { char const *vendor, *version, *product; int i; unsigned long prod_len = 0; const struct bios_settings_t *bt = NULL; /* get BIOS data */ vendor = dmi_get_system_info(DMI_SYS_VENDOR); Loading @@ -514,20 +533,20 @@ static int acerhdf_check_hardware(void) kernelmode = 0; } prod_len = strlen(product); if (verbose) pr_info("BIOS info: %s %s, product: %s\n", vendor, version, product); /* search BIOS version and vendor in BIOS settings table */ for (i = 0; bios_tbl[i].version[0]; i++) { if (strlen(bios_tbl[i].product) >= prod_len && !strncmp(bios_tbl[i].product, product, strlen(bios_tbl[i].product)) && !strcmp(bios_tbl[i].vendor, vendor) && !strcmp(bios_tbl[i].version, version)) { bios_cfg = &bios_tbl[i]; for (bt = bios_tbl; bt->vendor[0]; bt++) { /* * check if actual hardware BIOS vendor, product and version * IDs start with the strings of BIOS table entry */ if (str_starts_with(vendor, bt->vendor) && str_starts_with(product, bt->product) && str_starts_with(version, bt->version)) { bios_cfg = bt; break; } } Loading Loading @@ -640,9 +659,14 @@ static void __exit acerhdf_exit(void) MODULE_LICENSE("GPL"); MODULE_AUTHOR("Peter Feuerer"); MODULE_DESCRIPTION("Aspire One temperature and fan driver"); MODULE_ALIAS("dmi:*:*Acer*:*:"); MODULE_ALIAS("dmi:*:*Gateway*:*:"); MODULE_ALIAS("dmi:*:*Packard Bell*:*:"); MODULE_ALIAS("dmi:*:*Acer*:pnAOA*:"); MODULE_ALIAS("dmi:*:*Acer*:pnAspire 1410*:"); MODULE_ALIAS("dmi:*:*Acer*:pnAspire 1810*:"); MODULE_ALIAS("dmi:*:*Gateway*:pnAOA*:"); MODULE_ALIAS("dmi:*:*Gateway*:pnLT31*:"); MODULE_ALIAS("dmi:*:*Packard Bell*:pnAOA*:"); MODULE_ALIAS("dmi:*:*Packard Bell*:pnDOA*:"); MODULE_ALIAS("dmi:*:*Packard Bell*:pnDOTMU*:"); module_init(acerhdf_init); module_exit(acerhdf_exit);