diff options
author | Hans de Goede <hdegoede@redhat.com> | 2020-02-21 18:29:27 +0100 |
---|---|---|
committer | Hans de Goede <hdegoede@redhat.com> | 2020-03-04 16:54:36 +0100 |
commit | 8f1e57409079b091b01562b1d444256380facee8 (patch) | |
tree | a1e64aea1fe739ddbc12b937cec67d93c551ef64 /drivers/gpu/drm/i915/display/intel_quirks.c | |
parent | d59b1d1bdffa62291958d14f4e1ea69bb65958a6 (diff) | |
download | linux-8f1e57409079b091b01562b1d444256380facee8.tar.gz |
drm/i915: Add invert-brightness quirk for Thundersoft TST178 tablet
The Thundersoft TST178 tablet uses a DSI panel with an external PWM
controller (as all DSI panels do). But unlike other DSI panels a duty-cycle
of 100% turns the backlight off and 0% sets it to maximum brightness.
I've checked the VBT and there is a BDB_LVDS_BACKLIGHT section, but
it does not set the active_low_pwm flag. This tablet re-uses the main
PCI vendor and product ids for the subsystem ids, so I see no other option
then to add a DMI based quirk to fix this.
Note that the PWM backlight code in intel_panel.c currently does not honor
the vbt.active_low_pwm flag, but that does not matter in this case.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Reviewed-by: Jani Nikula <jani.nikula@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20200221172927.510027-2-hdegoede@redhat.com
Diffstat (limited to 'drivers/gpu/drm/i915/display/intel_quirks.c')
-rw-r--r-- | drivers/gpu/drm/i915/display/intel_quirks.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/display/intel_quirks.c b/drivers/gpu/drm/i915/display/intel_quirks.c index 9d235d270dac..46beb155d835 100644 --- a/drivers/gpu/drm/i915/display/intel_quirks.c +++ b/drivers/gpu/drm/i915/display/intel_quirks.c @@ -82,6 +82,16 @@ static const struct intel_dmi_quirk intel_dmi_quirks[] = { DMI_MATCH(DMI_PRODUCT_NAME, ""), }, }, + { + .callback = intel_dmi_reverse_brightness, + .ident = "Thundersoft TST178 tablet", + /* DMI strings are too generic, also match on BIOS date */ + .matches = {DMI_EXACT_MATCH(DMI_BOARD_VENDOR, "AMI Corporation"), + DMI_EXACT_MATCH(DMI_BOARD_NAME, "Aptio CRB"), + DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "To be filled by O.E.M."), + DMI_EXACT_MATCH(DMI_BIOS_DATE, "04/15/2014"), + }, + }, { } /* terminating entry */ }, .hook = quirk_invert_brightness, |