1
0
Fork 0
alistair23-linux/drivers/gpu/drm/i915/display
Jani Nikula bb83d5fb55 drm/i915/backlight: fix CPU mode backlight takeover on LPT
The pch_get_backlight(), lpt_get_backlight(), and lpt_set_backlight()
functions operate directly on the hardware registers. If inverting the
value is needed, using intel_panel_compute_brightness(), it should only
be done in the interface between hardware registers and
panel->backlight.level.

The CPU mode takeover code added in commit 5b1ec9ac7a
("drm/i915/backlight: Fix backlight takeover on LPT, v3.") reads the
hardware register and converts to panel->backlight.level correctly,
however the value written back should remain in the hardware register
"domain".

This hasn't been an issue, because GM45 machines are the only known
users of i915.invert_brightness and the brightness invert quirk, and
without one of them no conversion is made. It's likely nobody's ever hit
the problem.

Fixes: 5b1ec9ac7a ("drm/i915/backlight: Fix backlight takeover on LPT, v3.")
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Cc: Lyude Paul <lyude@redhat.com>
Cc: <stable@vger.kernel.org> # v5.1+
Reviewed-by: Lyude Paul <lyude@redhat.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20210108152841.6944-1-jani.nikula@intel.com
(cherry picked from commit 0d4ced1c5b)
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
2021-01-11 12:10:34 +02:00
..
dvo_ch7xxx.c
dvo_ch7017.c
dvo_ivch.c
dvo_ns2501.c
dvo_sil164.c
dvo_tfp410.c
icl_dsi.c drm/i915: HW state readout for Bigjoiner case 2020-11-18 11:41:11 -08:00
intel_acpi.c
intel_acpi.h
intel_atomic.c drm/i915/dp: Add from_crtc_state to copy color blobs 2020-11-15 18:30:05 -08:00
intel_atomic.h drm/i915/dp: Add from_crtc_state to copy color blobs 2020-11-15 18:30:05 -08:00
intel_atomic_plane.c drm/i915: Add bigjoiner aware plane clipping checks 2020-11-18 11:42:04 -08:00
intel_atomic_plane.h drm/i915: Add bigjoiner aware plane clipping checks 2020-11-18 11:42:04 -08:00
intel_audio.c drm/i915: Nuke force_min_cdclk_changed 2020-09-17 20:10:21 +03:00
intel_audio.h
intel_bios.c drm/i915: Use AUX_CH_USBCn for the RKL VBT AUX CH setup 2020-10-30 14:47:52 +02:00
intel_bios.h
intel_bw.c drm/i915: Fix wrong CDCLK adjustment changes 2020-06-04 11:11:56 -07:00
intel_bw.h drm/i915: Fix includes and local vars order 2020-05-22 14:40:35 +01:00
intel_cdclk.c drm/i915/rkl: Add new cdclk table 2020-10-16 08:47:08 -07:00
intel_cdclk.h drm/i915: Nuke force_min_cdclk_changed 2020-09-17 20:10:21 +03:00
intel_color.c drm/i915: Replace some gamma_mode ifs with switches 2020-09-28 18:09:52 +03:00
intel_color.h
intel_combo_phy.c drm/i915/jsl: Split EHL/JSL platform info and PCI ids 2020-10-14 09:31:34 +02:00
intel_combo_phy.h
intel_connector.c drm/i915: Add connector dbgfs for all connectors 2020-04-17 13:12:10 +05:30
intel_connector.h
intel_crt.c drm/i915: Reduce INTEL_DISPLAY_ENABLED to just treat outputs as disconnected 2020-09-15 15:28:21 +03:00
intel_crt.h
intel_csr.c drm/i915/dg1: Load DMC 2020-10-15 14:14:33 -07:00
intel_csr.h
intel_ddi.c drm/i915: HW state readout for Bigjoiner case 2020-11-18 11:41:11 -08:00
intel_ddi.h drm/i915: Eliminate intel_dp.regs.dp_tp_{ctl,status} 2020-10-01 16:45:57 +03:00
intel_de.h
intel_display.c drm for 5.11-rc1 2020-12-14 11:07:56 -08:00
intel_display.h drm/i915/dp: Allow big joiner modes in intel_dp_mode_valid(), v3. 2020-11-18 11:41:10 -08:00
intel_display_debugfs.c drm/i915: Add debugfs dumping for bigjoiner, v3. 2020-11-18 11:42:12 -08:00
intel_display_debugfs.h
intel_display_power.c drm/i915: Tweaked Wa_14010685332 for PCHs used on gen11 platforms 2020-11-17 07:58:03 -08:00
intel_display_power.h drm/i915/dg1: Add DG1 power wells 2020-10-15 14:14:29 -07:00
intel_display_types.h drm/i915/dp: Track pm_qos per connector 2021-01-05 10:25:03 +02:00
intel_dp.c drm/i915/dp: Track pm_qos per connector 2021-01-05 10:25:03 +02:00
intel_dp.h drm/i915/dp: Allow big joiner modes in intel_dp_mode_valid(), v3. 2020-11-18 11:41:10 -08:00
intel_dp_aux_backlight.c drm/i915/dp: Tweak initial dpcd backlight.enabled value 2020-10-19 13:29:42 -04:00
intel_dp_aux_backlight.h
intel_dp_hdcp.c drm/i915: Add HDCP 1.4 support for MST connectors 2020-09-01 13:03:05 +05:30
intel_dp_link_training.c drm/i915: Switch to LTTPR non-transparent mode link training 2020-10-12 15:33:03 +03:00
intel_dp_link_training.h drm/i915: Switch to LTTPR non-transparent mode link training 2020-10-12 15:33:03 +03:00
intel_dp_mst.c drm-misc-next for 5.11: 2020-12-15 10:21:48 +01:00
intel_dp_mst.h drm/i915/display: prefer dig_port to reference intel_digital_port 2020-07-02 11:26:37 -07:00
intel_dpio_phy.c drm/i915: Plumb crtc_state to link training 2020-10-01 16:45:57 +03:00
intel_dpio_phy.h drm/i915: Plumb crtc_state to link training 2020-10-01 16:45:57 +03:00
intel_dpll_mgr.c Merge tag 'drm-intel-next-queued-2020-11-27' of git://anongit.freedesktop.org/drm/drm-intel into drm-next 2020-12-03 13:01:44 +10:00
intel_dpll_mgr.h drm/i915: Use actual readout results for .get_freq() 2020-11-16 21:42:55 +02:00
intel_dsb.c drm/i915/display: fix missing null check on allocated dsb object 2020-06-30 14:26:51 +03:00
intel_dsb.h drm/i915/dsb: Pre allocate and late cleanup of cmd buffer 2020-05-23 15:42:28 +05:30
intel_dsi.c drm/i915/dp: Allow big joiner modes in intel_dp_mode_valid(), v3. 2020-11-18 11:41:10 -08:00
intel_dsi.h drm/i915/dsi: Initiate frame request in cmd mode 2020-09-28 20:02:14 +03:00
intel_dsi_dcs_backlight.c
intel_dsi_dcs_backlight.h
intel_dsi_vbt.c drm/i915: drop a bunch of superfluous inlines 2020-04-21 09:31:37 +03:00
intel_dvo.c drm/i915: Reduce INTEL_DISPLAY_ENABLED to just treat outputs as disconnected 2020-09-15 15:28:21 +03:00
intel_dvo.h
intel_dvo_dev.h
intel_fbc.c drm/i915/display/fbc: Implement WA 22010751166 2020-10-19 17:25:55 -07:00
intel_fbc.h
intel_fbdev.c drm/i915: Reduce INTEL_DISPLAY_ENABLED to just removing the outputs 2020-09-15 14:57:13 +03:00
intel_fbdev.h
intel_fifo_underrun.c
intel_fifo_underrun.h
intel_frontbuffer.c drm/i915: Add a couple of missing i915_active_fini() 2020-08-17 16:16:34 -04:00
intel_frontbuffer.h
intel_global_state.c drm/i915: Fix global state use-after-frees with a refcount 2020-06-02 16:35:24 +03:00
intel_global_state.h drm/i915: Fix global state use-after-frees with a refcount 2020-06-02 16:35:24 +03:00
intel_gmbus.c drm/i915/dg1: gmbus pin mapping 2020-10-07 13:51:21 -07:00
intel_gmbus.h
intel_hdcp.c drm/i915: dont retry stream management at seq_num_m roll over 2020-09-24 15:44:57 +05:30
intel_hdcp.h drm/i915: Plumb port through hdcp init 2020-09-01 13:02:33 +05:30
intel_hdmi.c drm/i915/dp: Allow big joiner modes in intel_dp_mode_valid(), v3. 2020-11-18 11:41:10 -08:00
intel_hdmi.h drm/i915: Do YCbCr 444->420 conversion via DP protocol converters 2020-09-17 18:43:09 +03:00
intel_hotplug.c drm/i915: Refactor .hpd_irq_setup() calls a bit 2020-10-20 20:18:53 +03:00
intel_hotplug.h drm/i915: Reorder hpd init vs. display resume 2020-10-20 20:18:32 +03:00
intel_lpe_audio.c drm/i915/lpe_audio: Remove pointless irq_to_desc() usage 2020-12-15 16:19:32 +01:00
intel_lpe_audio.h
intel_lspcon.c drm/i915: Nuke lspcon_ycbcr420_config() 2020-10-16 19:44:45 +03:00
intel_lspcon.h drm/i915: Nuke lspcon_ycbcr420_config() 2020-10-16 19:44:45 +03:00
intel_lvds.c drm/i915: Wait for LVDS panel power cycle delay on reboot 2020-10-09 21:12:13 +03:00
intel_lvds.h
intel_opregion.c drm/i915/display: remove debug message from error path 2020-10-28 00:33:46 -07:00
intel_opregion.h
intel_overlay.c drm/i915: Protect overlay colorkey macro arguments 2020-05-15 20:12:56 +03:00
intel_overlay.h
intel_panel.c drm/i915/backlight: fix CPU mode backlight takeover on LPT 2021-01-11 12:10:34 +02:00
intel_panel.h drm/i915: Reduce INTEL_DISPLAY_ENABLED to just treat outputs as disconnected 2020-09-15 15:28:21 +03:00
intel_pipe_crc.c
intel_pipe_crc.h
intel_psr.c drm/i915/display: Use initial_fastset_check() to compute and apply the initial PSR state 2020-11-05 05:38:51 -08:00
intel_psr.h drm/i915/display: Use initial_fastset_check() to compute and apply the initial PSR state 2020-11-05 05:38:51 -08:00
intel_quirks.c
intel_quirks.h
intel_sdvo.c drm/i915: Reduce INTEL_DISPLAY_ENABLED to just treat outputs as disconnected 2020-09-15 15:28:21 +03:00
intel_sdvo.h
intel_sdvo_regs.h drm/i915/sdvo: Fix SDVO colorimetry bit defines 2020-07-09 16:14:47 +03:00
intel_sprite.c drm/i915: Add bigjoiner aware plane clipping checks 2020-11-18 11:42:04 -08:00
intel_sprite.h drm/i915/rkl: Limit number of universal planes to 5 2020-05-20 08:35:22 -07:00
intel_tc.c drm/i915: Reduce severity for fixing up mistaken VBT tc->legacy_port 2020-10-30 19:10:28 +00:00
intel_tc.h drm/i915: Turn intel_digital_port_connected() in a vfunc 2020-05-11 16:25:15 +03:00
intel_tv.c drm/i915: Reduce INTEL_DISPLAY_ENABLED to just treat outputs as disconnected 2020-09-15 15:28:21 +03:00
intel_tv.h
intel_vbt_defs.h drm/i915/vbt: Add VRR VBT toggle 2020-10-09 14:09:54 -07:00
intel_vdsc.c drm/i915/dp: Modify VDSC helpers to configure DSC for Bigjoiner slave 2020-11-18 11:41:10 -08:00
intel_vdsc.h drm/i915/dp: Modify VDSC helpers to configure DSC for Bigjoiner slave 2020-11-18 11:41:10 -08:00
intel_vga.c
intel_vga.h
vlv_dsi.c drm/i915/dsi: Use unconditional msleep for the panel_on_delay when there is no reset-deassert MIPI-sequence 2021-01-11 12:10:34 +02:00
vlv_dsi_pll.c drm/i915/vlv_dsi_pll: fix spelling mistake "Cant" -> "Can't" 2020-08-27 16:28:21 +03:00