|
@@ -1539,14 +1539,20 @@ static int acpi_video_bus_put_devices(struct acpi_video_bus *video)
|
|
|
|
|
|
/* acpi_video interface */
|
|
|
|
|
|
+/*
|
|
|
+ * Win8 requires setting bit2 of _DOS to let firmware know it shouldn't
|
|
|
+ * preform any automatic brightness change on receiving a notification.
|
|
|
+ */
|
|
|
static int acpi_video_bus_start_devices(struct acpi_video_bus *video)
|
|
|
{
|
|
|
- return acpi_video_bus_DOS(video, 0, 0);
|
|
|
+ return acpi_video_bus_DOS(video, 0,
|
|
|
+ acpi_video_backlight_quirks() ? 1 : 0);
|
|
|
}
|
|
|
|
|
|
static int acpi_video_bus_stop_devices(struct acpi_video_bus *video)
|
|
|
{
|
|
|
- return acpi_video_bus_DOS(video, 0, 1);
|
|
|
+ return acpi_video_bus_DOS(video, 0,
|
|
|
+ acpi_video_backlight_quirks() ? 0 : 1);
|
|
|
}
|
|
|
|
|
|
static void acpi_video_bus_notify(struct acpi_device *device, u32 event)
|