diff options
Diffstat (limited to 'drivers/acpi/sleep.c')
-rw-r--r-- | drivers/acpi/sleep.c | 30 |
1 files changed, 16 insertions, 14 deletions
diff --git a/drivers/acpi/sleep.c b/drivers/acpi/sleep.c index 5d0486f1cfcd..754d59f95500 100644 --- a/drivers/acpi/sleep.c +++ b/drivers/acpi/sleep.c | |||
@@ -338,6 +338,14 @@ static const struct dmi_system_id acpisleep_dmi_table[] __initconst = { | |||
338 | DMI_MATCH(DMI_PRODUCT_NAME, "K54HR"), | 338 | DMI_MATCH(DMI_PRODUCT_NAME, "K54HR"), |
339 | }, | 339 | }, |
340 | }, | 340 | }, |
341 | { | ||
342 | .callback = init_nvs_save_s3, | ||
343 | .ident = "Asus 1025C", | ||
344 | .matches = { | ||
345 | DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), | ||
346 | DMI_MATCH(DMI_PRODUCT_NAME, "1025C"), | ||
347 | }, | ||
348 | }, | ||
341 | /* | 349 | /* |
342 | * https://bugzilla.kernel.org/show_bug.cgi?id=189431 | 350 | * https://bugzilla.kernel.org/show_bug.cgi?id=189431 |
343 | * Lenovo G50-45 is a platform later than 2012, but needs nvs memory | 351 | * Lenovo G50-45 is a platform later than 2012, but needs nvs memory |
@@ -718,9 +726,6 @@ static const struct acpi_device_id lps0_device_ids[] = { | |||
718 | #define ACPI_LPS0_ENTRY 5 | 726 | #define ACPI_LPS0_ENTRY 5 |
719 | #define ACPI_LPS0_EXIT 6 | 727 | #define ACPI_LPS0_EXIT 6 |
720 | 728 | ||
721 | #define ACPI_LPS0_SCREEN_MASK ((1 << ACPI_LPS0_SCREEN_OFF) | (1 << ACPI_LPS0_SCREEN_ON)) | ||
722 | #define ACPI_LPS0_PLATFORM_MASK ((1 << ACPI_LPS0_ENTRY) | (1 << ACPI_LPS0_EXIT)) | ||
723 | |||
724 | static acpi_handle lps0_device_handle; | 729 | static acpi_handle lps0_device_handle; |
725 | static guid_t lps0_dsm_guid; | 730 | static guid_t lps0_dsm_guid; |
726 | static char lps0_dsm_func_mask; | 731 | static char lps0_dsm_func_mask; |
@@ -924,17 +929,14 @@ static int lps0_device_attach(struct acpi_device *adev, | |||
924 | if (out_obj && out_obj->type == ACPI_TYPE_BUFFER) { | 929 | if (out_obj && out_obj->type == ACPI_TYPE_BUFFER) { |
925 | char bitmask = *(char *)out_obj->buffer.pointer; | 930 | char bitmask = *(char *)out_obj->buffer.pointer; |
926 | 931 | ||
927 | if ((bitmask & ACPI_LPS0_PLATFORM_MASK) == ACPI_LPS0_PLATFORM_MASK || | 932 | lps0_dsm_func_mask = bitmask; |
928 | (bitmask & ACPI_LPS0_SCREEN_MASK) == ACPI_LPS0_SCREEN_MASK) { | 933 | lps0_device_handle = adev->handle; |
929 | lps0_dsm_func_mask = bitmask; | 934 | /* |
930 | lps0_device_handle = adev->handle; | 935 | * Use suspend-to-idle by default if the default |
931 | /* | 936 | * suspend mode was not set from the command line. |
932 | * Use suspend-to-idle by default if the default | 937 | */ |
933 | * suspend mode was not set from the command line. | 938 | if (mem_sleep_default > PM_SUSPEND_MEM) |
934 | */ | 939 | mem_sleep_current = PM_SUSPEND_TO_IDLE; |
935 | if (mem_sleep_default > PM_SUSPEND_MEM) | ||
936 | mem_sleep_current = PM_SUSPEND_TO_IDLE; | ||
937 | } | ||
938 | 940 | ||
939 | acpi_handle_debug(adev->handle, "_DSM function mask: 0x%x\n", | 941 | acpi_handle_debug(adev->handle, "_DSM function mask: 0x%x\n", |
940 | bitmask); | 942 | bitmask); |