===================================================================
@@ -203,6 +203,9 @@ long acpi_video_get_capabilities(acpi_ha
*/
dmi_check_system(video_detect_dmi_table);
+
+ if (acpi_gbl_osi_data >= ACPI_OSI_WIN_8)
+ acpi_video_support |= ACPI_VIDEO_FORCE_NO_BACKLIGHT;
} else {
status = acpi_bus_get_device(graphics_handle, &tmp_dev);
if (ACPI_FAILURE(status)) {
@@ -258,13 +261,17 @@ int acpi_video_backlight_support(void)
{
acpi_video_caps_check();
- /* First check for boot param -> highest prio */
+ /* First, check if no backlight support has been forced upon us. */
+ if (acpi_video_support & ACPI_VIDEO_FORCE_NO_BACKLIGHT)
+ return 0;
+
+ /* Next check for boot param -> second highest prio */
if (acpi_video_support & ACPI_VIDEO_BACKLIGHT_FORCE_VENDOR)
return 0;
else if (acpi_video_support & ACPI_VIDEO_BACKLIGHT_FORCE_VIDEO)
return 1;
- /* Then check for DMI blacklist -> second highest prio */
+ /* Then check for DMI blacklist -> third highest prio */
if (acpi_video_support & ACPI_VIDEO_BACKLIGHT_DMI_VENDOR)
return 0;
else if (acpi_video_support & ACPI_VIDEO_BACKLIGHT_DMI_VIDEO)
===================================================================
@@ -191,6 +191,7 @@ extern bool wmi_has_guid(const char *gui
#define ACPI_VIDEO_BACKLIGHT_DMI_VIDEO 0x0200
#define ACPI_VIDEO_OUTPUT_SWITCHING_DMI_VENDOR 0x0400
#define ACPI_VIDEO_OUTPUT_SWITCHING_DMI_VIDEO 0x0800
+#define ACPI_VIDEO_FORCE_NO_BACKLIGHT 0x1000
#if defined(CONFIG_ACPI_VIDEO) || defined(CONFIG_ACPI_VIDEO_MODULE)