Merge branch 'acpi-general'
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>
Fri, 7 Dec 2012 22:14:35 +0000 (23:14 +0100)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Fri, 7 Dec 2012 22:14:35 +0000 (23:14 +0100)
* acpi-general:
  pnpacpi: fix incorrect TEST_ALPHA() test
  ACPI / video: ignore BIOS initial backlight value for HP Folio 13-2000
  ACPI : do not use Lid and Sleep button for S5 wakeup

drivers/acpi/scan.c
drivers/acpi/video.c
drivers/pnp/pnpacpi/core.c

index 8ee379e..53502d1 100644 (file)
@@ -968,8 +968,8 @@ acpi_bus_extract_wakeup_device_power_package(acpi_handle handle,
 static void acpi_bus_set_run_wake_flags(struct acpi_device *device)
 {
        struct acpi_device_id button_device_ids[] = {
-               {"PNP0C0D", 0},
                {"PNP0C0C", 0},
+               {"PNP0C0D", 0},
                {"PNP0C0E", 0},
                {"", 0},
        };
@@ -981,6 +981,11 @@ static void acpi_bus_set_run_wake_flags(struct acpi_device *device)
        /* Power button, Lid switch always enable wakeup */
        if (!acpi_match_device_ids(device, button_device_ids)) {
                device->wakeup.flags.run_wake = 1;
+               if (!acpi_match_device_ids(device, &button_device_ids[1])) {
+                       /* Do not use Lid/sleep button for S5 wakeup */
+                       if (device->wakeup.sleep_state == ACPI_STATE_S5)
+                               device->wakeup.sleep_state = ACPI_STATE_S4;
+               }
                device_set_wakeup_capable(&device->dev, true);
                return;
        }
index 0230cb6..ac9a69c 100644 (file)
@@ -389,6 +389,12 @@ static int __init video_set_bqc_offset(const struct dmi_system_id *d)
        return 0;
 }
 
+static int video_ignore_initial_backlight(const struct dmi_system_id *d)
+{
+       use_bios_initial_backlight = 0;
+       return 0;
+}
+
 static struct dmi_system_id video_dmi_table[] __initdata = {
        /*
         * Broken _BQC workaround http://bugzilla.kernel.org/show_bug.cgi?id=13121
@@ -433,6 +439,14 @@ static struct dmi_system_id video_dmi_table[] __initdata = {
                DMI_MATCH(DMI_PRODUCT_NAME, "Aspire 7720"),
                },
        },
+       {
+        .callback = video_ignore_initial_backlight,
+        .ident = "HP Folio 13-2000",
+        .matches = {
+               DMI_MATCH(DMI_BOARD_VENDOR, "Hewlett-Packard"),
+               DMI_MATCH(DMI_PRODUCT_NAME, "HP Folio 13 - 2000 Notebook PC"),
+               },
+       },
        {}
 };
 
index 93a16ee..72e822e 100644 (file)
@@ -58,7 +58,7 @@ static inline int __init is_exclusive_device(struct acpi_device *dev)
        if (!(('0' <= (c) && (c) <= '9') || ('A' <= (c) && (c) <= 'F'))) \
                return 0
 #define TEST_ALPHA(c) \
-       if (!('@' <= (c) || (c) <= 'Z')) \
+       if (!('A' <= (c) && (c) <= 'Z')) \
                return 0
 static int __init ispnpidacpi(const char *id)
 {