[PATCH] [ACPI] Default to using the native backlight control on Windows 8 systems
Rafael J. Wysocki
rjw at rjwysocki.net
Mon Apr 21 13:55:33 PDT 2014
On Thursday, April 10, 2014 04:13:23 PM Matthew Garrett wrote:
> The list of machines in the "Use native backlight" table is getting longer
> and longer, which is a solid indication that we're doing something wrong.
> Disable the ACPI backlight interface if the system claims to be Windows 8
> or later.
>
> Signed-off-by: Matthew Garrett <matthew.garrett at nebula.com>
> ---
>
> Let's at least get this into -next for 3.16 and figure out whether the
> drivers actually work now.
Does this still apply to 3.15-rc2 or does it need to be refreshed?
> drivers/acpi/video.c | 139 +--------------------------------------------------
> 1 file changed, 1 insertion(+), 138 deletions(-)
>
> diff --git a/drivers/acpi/video.c b/drivers/acpi/video.c
> index 48c7e8a..21d2fc9 100644
> --- a/drivers/acpi/video.c
> +++ b/drivers/acpi/video.c
> @@ -78,14 +78,6 @@ module_param(brightness_switch_enabled, bool, 0644);
> static bool allow_duplicates;
> module_param(allow_duplicates, bool, 0644);
>
> -/*
> - * For Windows 8 systems: used to decide if video module
> - * should skip registering backlight interface of its own.
> - */
> -static int use_native_backlight_param = -1;
> -module_param_named(use_native_backlight, use_native_backlight_param, int, 0444);
> -static bool use_native_backlight_dmi = false;
> -
> static int register_count;
> static struct mutex video_list_lock;
> static struct list_head video_bus_head;
> @@ -230,18 +222,9 @@ static int acpi_video_get_next_level(struct acpi_video_device *device,
> static int acpi_video_switch_brightness(struct acpi_video_device *device,
> int event);
>
> -static bool acpi_video_use_native_backlight(void)
> -{
> - if (use_native_backlight_param != -1)
> - return use_native_backlight_param;
> - else
> - return use_native_backlight_dmi;
> -}
> -
> static bool acpi_video_verify_backlight_support(void)
> {
> - if (acpi_osi_is_win8() && acpi_video_use_native_backlight() &&
> - backlight_device_registered(BACKLIGHT_RAW))
> + if (acpi_osi_is_win8() && backlight_device_registered(BACKLIGHT_RAW))
> return false;
> return acpi_video_backlight_support();
> }
> @@ -405,12 +388,6 @@ static int __init video_set_bqc_offset(const struct dmi_system_id *d)
> return 0;
> }
>
> -static int __init video_set_use_native_backlight(const struct dmi_system_id *d)
> -{
> - use_native_backlight_dmi = true;
> - return 0;
> -}
> -
> static struct dmi_system_id video_dmi_table[] __initdata = {
> /*
> * Broken _BQC workaround http://bugzilla.kernel.org/show_bug.cgi?id=13121
> @@ -455,120 +432,6 @@ static struct dmi_system_id video_dmi_table[] __initdata = {
> DMI_MATCH(DMI_PRODUCT_NAME, "Aspire 7720"),
> },
> },
> - {
> - .callback = video_set_use_native_backlight,
> - .ident = "ThinkPad T430s",
> - .matches = {
> - DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
> - DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad T430s"),
> - },
> - },
> - {
> - .callback = video_set_use_native_backlight,
> - .ident = "ThinkPad X230",
> - .matches = {
> - DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
> - DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad X230"),
> - },
> - },
> - {
> - .callback = video_set_use_native_backlight,
> - .ident = "ThinkPad X1 Carbon",
> - .matches = {
> - DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
> - DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad X1 Carbon"),
> - },
> - },
> - {
> - .callback = video_set_use_native_backlight,
> - .ident = "Lenovo Yoga 13",
> - .matches = {
> - DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
> - DMI_MATCH(DMI_PRODUCT_VERSION, "Lenovo IdeaPad Yoga 13"),
> - },
> - },
> - {
> - .callback = video_set_use_native_backlight,
> - .ident = "Dell Inspiron 7520",
> - .matches = {
> - DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
> - DMI_MATCH(DMI_PRODUCT_VERSION, "Inspiron 7520"),
> - },
> - },
> - {
> - .callback = video_set_use_native_backlight,
> - .ident = "Acer Aspire 5733Z",
> - .matches = {
> - DMI_MATCH(DMI_SYS_VENDOR, "Acer"),
> - DMI_MATCH(DMI_PRODUCT_NAME, "Aspire 5733Z"),
> - },
> - },
> - {
> - .callback = video_set_use_native_backlight,
> - .ident = "Acer Aspire V5-431",
> - .matches = {
> - DMI_MATCH(DMI_SYS_VENDOR, "Acer"),
> - DMI_MATCH(DMI_PRODUCT_NAME, "Aspire V5-431"),
> - },
> - },
> - {
> - .callback = video_set_use_native_backlight,
> - .ident = "HP ProBook 4340s",
> - .matches = {
> - DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
> - DMI_MATCH(DMI_PRODUCT_VERSION, "HP ProBook 4340s"),
> - },
> - },
> - {
> - .callback = video_set_use_native_backlight,
> - .ident = "HP ProBook 2013 models",
> - .matches = {
> - DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
> - DMI_MATCH(DMI_PRODUCT_NAME, "HP ProBook "),
> - DMI_MATCH(DMI_PRODUCT_NAME, " G1"),
> - },
> - },
> - {
> - .callback = video_set_use_native_backlight,
> - .ident = "HP EliteBook 2013 models",
> - .matches = {
> - DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
> - DMI_MATCH(DMI_PRODUCT_NAME, "HP EliteBook "),
> - DMI_MATCH(DMI_PRODUCT_NAME, " G1"),
> - },
> - },
> - {
> - .callback = video_set_use_native_backlight,
> - .ident = "HP ZBook 14",
> - .matches = {
> - DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
> - DMI_MATCH(DMI_PRODUCT_NAME, "HP ZBook 14"),
> - },
> - },
> - {
> - .callback = video_set_use_native_backlight,
> - .ident = "HP ZBook 15",
> - .matches = {
> - DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
> - DMI_MATCH(DMI_PRODUCT_NAME, "HP ZBook 15"),
> - },
> - },
> - {
> - .callback = video_set_use_native_backlight,
> - .ident = "HP ZBook 17",
> - .matches = {
> - DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
> - DMI_MATCH(DMI_PRODUCT_NAME, "HP ZBook 17"),
> - },
> - },
> - {
> - .callback = video_set_use_native_backlight,
> - .ident = "HP EliteBook 8780w",
> - .matches = {
> - DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
> - DMI_MATCH(DMI_PRODUCT_NAME, "HP EliteBook 8780w"),
> - },
> - },
> {}
> };
>
>
--
I speak only for myself.
Rafael J. Wysocki, Intel Open Source Technology Center.
More information about the dri-devel
mailing list