Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ff253d3d authored by Rafael J. Wysocki's avatar Rafael J. Wysocki
Browse files

Merge branch 'acpi-video'

* acpi-video:
  ACPI / video: Add Acer TravelMate B113 to native backlight blacklist
  ACPI / video: Add Dell Inspiron 5737 to the blacklist
  ACPI / i915: ignore firmware requests for backlight change
parents 0b80a8ff ab7027de
Loading
Loading
Loading
Loading
+10 −1
Original line number Diff line number Diff line
@@ -241,13 +241,14 @@ static bool acpi_video_use_native_backlight(void)
		return use_native_backlight_dmi;
}

static bool acpi_video_verify_backlight_support(void)
bool acpi_video_verify_backlight_support(void)
{
	if (acpi_osi_is_win8() && acpi_video_use_native_backlight() &&
	    backlight_device_registered(BACKLIGHT_RAW))
		return false;
	return acpi_video_backlight_support();
}
EXPORT_SYMBOL_GPL(acpi_video_verify_backlight_support);

/* backlight device sysfs support */
static int acpi_video_get_brightness(struct backlight_device *bd)
@@ -562,6 +563,14 @@ static struct dmi_system_id video_dmi_table[] __initdata = {
		DMI_MATCH(DMI_PRODUCT_NAME, "Aspire V5-471G"),
		},
	},
	{
	 .callback = video_set_use_native_backlight,
	 .ident = "Acer TravelMate B113",
	 .matches = {
		DMI_MATCH(DMI_SYS_VENDOR, "Acer"),
		DMI_MATCH(DMI_PRODUCT_NAME, "TravelMate B113"),
		},
	},
	{
	.callback = video_set_use_native_backlight,
	.ident = "HP ProBook 4340s",
+8 −0
Original line number Diff line number Diff line
@@ -166,6 +166,14 @@ static struct dmi_system_id video_detect_dmi_table[] = {
		DMI_MATCH(DMI_PRODUCT_NAME, "UL30A"),
		},
	},
	{
	.callback = video_detect_force_vendor,
	.ident = "Dell Inspiron 5737",
	.matches = {
		DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
		DMI_MATCH(DMI_PRODUCT_NAME, "Inspiron 5737"),
		},
	},
	{ },
};

+9 −0
Original line number Diff line number Diff line
@@ -403,6 +403,15 @@ static u32 asle_set_backlight(struct drm_device *dev, u32 bclp)

	DRM_DEBUG_DRIVER("bclp = 0x%08x\n", bclp);

	/*
	 * If the acpi_video interface is not supposed to be used, don't
	 * bother processing backlight level change requests from firmware.
	 */
	if (!acpi_video_verify_backlight_support()) {
		DRM_DEBUG_KMS("opregion backlight request ignored\n");
		return 0;
	}

	if (!(bclp & ASLE_BCLP_VALID))
		return ASLC_BACKLIGHT_FAILED;

+2 −0
Original line number Diff line number Diff line
@@ -22,6 +22,7 @@ extern void acpi_video_unregister(void);
extern void acpi_video_unregister_backlight(void);
extern int acpi_video_get_edid(struct acpi_device *device, int type,
			       int device_id, void **edid);
extern bool acpi_video_verify_backlight_support(void);
#else
static inline int acpi_video_register(void) { return 0; }
static inline void acpi_video_unregister(void) { return; }
@@ -31,6 +32,7 @@ static inline int acpi_video_get_edid(struct acpi_device *device, int type,
{
	return -ENODEV;
}
static inline bool acpi_video_verify_backlight_support(void) { return false; }
#endif

#endif