linux-stable/drivers/gpu/drm/i915/display
Ville Syrjälä 90d5e8301a drm/i915: Don't do the WM0->WM1 copy w/a if WM1 is already enabled
Due to a workaround we have to make sure the WM1 watermarks block/lines
values are sensible even when WM1 is disabled. To that end we copy those
values from WM0.

However since we now keep each wm level enabled on a per-plane basis
it doesn't seem necessary to do that copy when we already have an
enabled WM1 on the current plane. That is, we might be in a situation
where another plane can only do WM0 (and thus needs the copy) but
the current plane's WM1 is still perfectly valid (ie. fits into the
current DDB allocation).

Skipping the copy could avoid reprogramming the plane's registers
needlessly in some cases.

Fixes: a301cb0fca ("drm/i915: Keep plane watermarks enabled more aggressively")
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230131002127.29305-1-ville.syrjala@linux.intel.com
Reviewed-by: Stanislav Lisovskiy <stanislav.lisovskiy@intel.com>
(cherry picked from commit c580c2d27a)
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
2023-02-06 08:15:37 -05:00
..
dvo_ch7xxx.c
dvo_ch7017.c
dvo_ivch.c
dvo_ns2501.c
dvo_sil164.c
dvo_tfp410.c
g4x_dp.c drm/i915: Fix VLV/CHV HDMI/DP audio enable 2022-12-13 13:22:19 -05:00
g4x_dp.h drm/i915/display: reduce includes in g4x_dp.h includes 2022-11-03 16:20:53 +02:00
g4x_hdmi.c drm/i915: Fix VLV/CHV HDMI/DP audio enable 2022-12-13 13:22:19 -05:00
g4x_hdmi.h drm/i915: Only include i915_reg.h from .c files 2022-02-02 07:59:54 -08:00
hsw_ips.c drm/i915: Introduce intel_crtc_needs_color_update() 2022-10-22 12:39:39 +03:00
hsw_ips.h drm/i915: Extract hsw_ips_get_config() 2022-02-09 21:51:56 +02:00
i9xx_plane.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
i9xx_plane.h
icl_dsi.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
icl_dsi.h drm/i915/dsi: split out icl_dsi.h 2021-11-23 13:11:42 +02:00
icl_dsi_regs.h drm/i915: split out intel_display_reg_defs.h 2022-11-11 12:44:49 +02:00
intel_acpi.c drm/i915: Call acpi_video_register_backlight() (v3) 2022-09-03 12:16:53 +02:00
intel_acpi.h drm/i915: Call acpi_video_register_backlight() (v3) 2022-09-03 12:16:53 +02:00
intel_atomic.c drm/i915: Introduce crtc_state->{pre,post}_csc_lut 2022-10-26 01:37:45 +03:00
intel_atomic.h drm/i915: Clean up the bigjoiner state copy logic 2022-02-11 22:42:23 +02:00
intel_atomic_plane.c drm/i915: Pass intel_plane to plane tracepoints 2022-11-17 19:00:37 +02:00
intel_atomic_plane.h drm/i915: Split plane data_rate into data_rate+data_rate_y 2022-03-21 17:46:38 +02:00
intel_audio.c drm/i915/audio: Realign some function arguments 2022-11-17 19:16:27 +02:00
intel_audio.h drm/i915/audio: rename intel_init_audio_hooks to intel_audio_hooks_init 2021-11-05 13:05:14 +02:00
intel_audio_regs.h drm/i915: split out intel_display_reg_defs.h 2022-11-11 12:44:49 +02:00
intel_backlight.c Merge drm/drm-next into drm-intel-next 2022-11-14 14:32:34 -05:00
intel_backlight.h
intel_backlight_regs.h drm/i915: split out intel_display_reg_defs.h 2022-11-11 12:44:49 +02:00
intel_bios.c drm/i915/bios: fix a memory leak in generate_lfp_data_ptrs 2022-11-29 12:30:14 -05:00
intel_bios.h drm/i915: Parse DP/eDP max lane count from VBT 2022-09-05 15:26:35 +03:00
intel_bw.c drm/i915/mtl: Skip doubling channel numbers for LPDDR4/LPDDDR5 2022-11-18 10:01:37 -08:00
intel_bw.h drm/i915: Add "maximum pipe read bandwidth" checks 2022-03-21 18:00:15 +02:00
intel_cdclk.c drm/i915/adlp: Fix typo for reference clock 2023-01-30 15:48:30 -05:00
intel_cdclk.h drm/i915: move and group cdclk under display.cdclk 2022-08-31 14:21:16 +03:00
intel_color.c drm/i915: Reorder 12.4 lut udw vs. ldw functions 2022-11-17 19:05:20 +02:00
intel_color.h drm/i915: Get rid of glk_load_degamma_lut_linear() 2022-10-26 01:38:07 +03:00
intel_combo_phy.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
intel_combo_phy.h
intel_combo_phy_regs.h drm/i915: Move combo PHY registers to their own header 2022-01-11 14:03:25 -08:00
intel_connector.c drm/i915: Extract intel_attach_scaling_mode_property() 2022-09-26 17:07:12 +03:00
intel_connector.h drm/i915: reduce includes in intel_connector.h 2022-11-03 16:20:53 +02:00
intel_crt.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
intel_crt.h drm/i915: Only include i915_reg.h from .c files 2022-02-02 07:59:54 -08:00
intel_crtc.c drm/i915: Introduce intel_crtc_needs_color_update() 2022-10-22 12:39:39 +03:00
intel_crtc.h drm/i915: s/intel_get_first_crtc/intel_first_crtc/ 2021-12-09 16:18:30 +02:00
intel_crtc_state_dump.c drm/i915: Get rid of glk_load_degamma_lut_linear() 2022-10-26 01:38:07 +03:00
intel_crtc_state_dump.h drm/i915/display: split out crtc state dump to a separate file 2022-06-17 11:54:58 +03:00
intel_cursor.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
intel_cursor.h
intel_ddi.c drm/i915/mtl+: Don't enable the AUX_IO power for non-eDP port main links 2022-11-18 17:29:19 +02:00
intel_ddi.h drm/i915: Only include i915_reg.h from .c files 2022-02-02 07:59:54 -08:00
intel_ddi_buf_trans.c drm/i915/display/adlp: More updates to voltage swing table 2022-06-02 17:58:17 -07:00
intel_ddi_buf_trans.h drm/i915: Shrink {icl_mg,tgl_dkl}_phy_ddi_buf_trans 2021-10-14 18:45:59 +03:00
intel_de.h drm/i915: Only include i915_reg.h from .c files 2022-02-02 07:59:54 -08:00
intel_display.c drm/i915: Remove non-existent pipes from bigjoiner pipe mask 2022-11-23 11:37:58 -05:00
intel_display.h Merge drm/drm-next into drm-intel-next 2022-11-14 14:32:34 -05:00
intel_display_core.h drm/i915/display: move restore state and ctx under display sub-struct 2022-11-17 16:12:56 +02:00
intel_display_debugfs.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
intel_display_debugfs.h
intel_display_power.c drm/i915/tgl+: Enable display DC power states on all eDP ports 2022-11-18 17:28:42 +02:00
intel_display_power.h drm/i915/tgl+: Enable display DC power states on all eDP ports 2022-11-18 17:28:42 +02:00
intel_display_power_map.c drm/i915: Add missing DC_OFF power domain->well mappings 2022-11-18 17:29:01 +02:00
intel_display_power_map.h drm/i915: Move the power domain->well mappings to intel_display_power_map.c 2022-04-20 20:41:57 +03:00
intel_display_power_well.c drm/i915/tgl+: Sanitize DKL PHY register definitions 2022-10-26 15:51:18 +03:00
intel_display_power_well.h drm/i915/dpio: move dpio_channel and dpio_phy enums to intel_dpio_phy.h 2022-11-03 16:20:53 +02:00
intel_display_reg_defs.h drm/i915: split out intel_display_reg_defs.h 2022-11-11 12:44:49 +02:00
intel_display_trace.c drm/i915/trace: split out display trace to a separate file 2021-12-09 11:21:46 +02:00
intel_display_trace.h drm/i915: Add device name to display tracepoints 2022-11-17 19:00:38 +02:00
intel_display_types.h drm/i915: Preallocate the debug power domain wakerefs array 2022-11-18 17:27:53 +02:00
intel_dkl_phy.c drm/i915/tgl+: Sanitize DKL PHY register definitions 2022-10-26 15:51:18 +03:00
intel_dkl_phy.h drm/i915/tgl+: Sanitize DKL PHY register definitions 2022-10-26 15:51:18 +03:00
intel_dkl_phy_regs.h drm/i915/tgl+: Sanitize DKL PHY register definitions 2022-10-26 15:51:18 +03:00
intel_dmc.c drm/i915/dmc: Update DG2 DMC version to v2.08 2022-11-30 09:07:14 -05:00
intel_dmc.h drm/i915/d12+: Disable DMC handlers during loading/disabling the firmware 2022-07-28 16:51:27 +03:00
intel_dmc_regs.h drm/i915/d12+: Disable DMC handlers during loading/disabling the firmware 2022-07-28 16:51:27 +03:00
intel_dp.c drm/i915/display: Don't disable DDI/Transcoder when setting phy test pattern 2022-12-13 13:22:23 -05:00
intel_dp.h Revert "drm/i915: Add DSC support to MST path" 2022-09-06 18:25:22 +03:00
intel_dp_aux.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
intel_dp_aux.h drm/i915/dp: make intel_dp_pack_aux() static again 2022-01-13 15:20:48 +02:00
intel_dp_aux_backlight.c drm/i915: Use luminance range calculated during edid parsing 2022-08-11 22:10:37 +03:00
intel_dp_aux_backlight.h
intel_dp_hdcp.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
intel_dp_hdcp.h
intel_dp_link_training.c drm/i915/dp: use drm_dp_phy_name() for logging 2022-09-13 10:03:36 +03:00
intel_dp_link_training.h drm: Rename dp/ to display/ 2022-04-25 11:17:45 +02:00
intel_dp_mst.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
intel_dp_mst.h drm/i915/mst: abstract intel_dp_mst_source_support() 2021-10-08 13:14:25 +03:00
intel_dpio_phy.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
intel_dpio_phy.h drm/i915/dpio: move dpio_channel and dpio_phy enums to intel_dpio_phy.h 2022-11-03 16:20:53 +02:00
intel_dpll.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
intel_dpll.h drm/i915: Add crtc .crtc_get_shared_dpll() 2022-04-25 21:15:12 +03:00
intel_dpll_mgr.c drm/i915/hti: abstract hti handling 2022-11-17 16:12:56 +02:00
intel_dpll_mgr.h drm/i915: Nuke intel_get_shared_dpll_id() 2022-09-26 20:43:14 +03:00
intel_dpt.c drm/i915: move i915_coherent_map_type() to i915_gem_pages.c and un-inline 2022-09-26 12:21:08 +03:00
intel_dpt.h drm/i915: Restore memory mapping for DPT FBs across system suspend/resume 2021-11-03 11:07:24 +02:00
intel_drrs.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
intel_drrs.h drm/i915: Clean up some namespacing 2022-10-07 20:04:38 +03:00
intel_dsb.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
intel_dsb.h drm/i915/dsb: hide struct intel_dsb better 2022-09-09 10:20:35 +03:00
intel_dsi.c drm/i915: move vbt to display.vbt 2022-08-31 15:19:39 +03:00
intel_dsi.h drm/i915/dsi: use VBT backlight and CABC port definitions directly 2022-08-18 13:10:51 +03:00
intel_dsi_dcs_backlight.c drm/i915/dsi: use VBT backlight and CABC port definitions directly 2022-08-18 13:10:51 +03:00
intel_dsi_dcs_backlight.h
intel_dsi_vbt.c drm/i915/dsi: fix MIPI_BKLT_EN_1 native GPIO index 2022-12-30 04:28:46 -05:00
intel_dsi_vbt.h drm/i915/dsi: split out intel_dsi_vbt.h 2021-11-23 13:11:13 +02:00
intel_dvo.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
intel_dvo.h
intel_dvo_dev.h drm/i915/display: reduce the includes in intel_dvo_dev.h 2022-11-03 16:20:53 +02:00
intel_fb.c - Hotplug code clean-up and organization (Jani, Gustavo) 2022-11-01 17:48:17 +10:00
intel_fb.h drm/i915: Simplify modifier lookup in watermark code 2022-10-03 18:45:41 +03:00
intel_fb_pin.c drm/i915/display: consider DG2_RC_CCS_CC when migrating buffers 2022-10-11 17:29:05 +01:00
intel_fb_pin.h drm/i915: Rename ggtt_view as gtt_view 2022-09-08 10:24:17 +01:00
intel_fbc.c drm/i915: Use intel_crtc_needs_modeset() more 2022-11-03 18:25:47 +02:00
intel_fbc.h drm/i915/mtl: Introduce FBC B 2022-08-19 12:38:54 +03:00
intel_fbdev.c drm/fb-helper: Perform all fbdev I/O with the same implementation 2022-11-05 17:05:54 +01:00
intel_fbdev.h drm/i915/fbdev: add intel_fbdev_framebuffer() helper 2022-02-17 10:01:21 +02:00
intel_fdi.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
intel_fdi.h drm/i915: Move intel_ddi_fdi_post_disable() to fdi code 2021-10-19 09:40:13 +03:00
intel_fifo_underrun.c drm/i915/trace: split out display trace to a separate file 2021-12-09 11:21:46 +02:00
intel_fifo_underrun.h drm/i915: reduce includes in intel_fifo_underrun.h 2022-11-03 16:20:53 +02:00
intel_frontbuffer.c drm/i915: Pass i915 to frontbuffer tracepoints 2022-11-17 19:00:37 +02:00
intel_frontbuffer.h drm/i915: move INTEL_FRONTBUFFER_* macros to intel_frontbuffer.h 2022-08-29 13:37:05 +03:00
intel_global_state.c drm/i915/display: move global_obj_list under display sub-struct 2022-11-17 16:12:56 +02:00
intel_global_state.h drm/i915/display: move global_obj_list under display sub-struct 2022-11-17 16:12:56 +02:00
intel_gmbus.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
intel_gmbus.h drm/i915/mtl: Add gmbus and gpio support 2022-09-12 14:53:33 -07:00
intel_gmbus_regs.h drm/i915/gmbus: stop using implicit dev_priv in register definitions 2022-08-31 18:09:20 +03:00
intel_hdcp.c Merge tag 'drm-intel-next-2022-08-29' of git://anongit.freedesktop.org/drm/drm-intel into drm-next 2022-09-15 22:38:13 +10:00
intel_hdcp.h
intel_hdcp_regs.h drm/i915: split out intel_display_reg_defs.h 2022-11-11 12:44:49 +02:00
intel_hdmi.c drm/i915: Treat HDMI as DVI when cloning 2022-11-17 19:12:34 +02:00
intel_hdmi.h drm/i915/display: reduce includes in intel_hdmi.h 2022-11-03 16:20:53 +02:00
intel_hotplug.c drm/i915/display: remove drm_device aliases 2022-10-11 13:34:12 +02:00
intel_hotplug.h drm/i915/hotplug: refactor hotplug init slightly 2022-09-19 12:32:49 +03:00
intel_hti.c drm/i915/display: move hti under display sub-struct 2022-11-17 16:12:56 +02:00
intel_hti.h drm/i915/hti: abstract hti handling 2022-11-17 16:12:56 +02:00
intel_hti_regs.h drm/i915/hti: abstract hti handling 2022-11-17 16:12:56 +02:00
intel_lpe_audio.c Merge drm/drm-next into drm-intel-next 2022-11-14 14:32:34 -05:00
intel_lpe_audio.h
intel_lspcon.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
intel_lspcon.h
intel_lvds.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
intel_lvds.h drm/i915: Only include i915_reg.h from .c files 2022-02-02 07:59:54 -08:00
intel_mg_phy_regs.h drm/i915: split out intel_display_reg_defs.h 2022-11-11 12:44:49 +02:00
intel_modeset_setup.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
intel_modeset_setup.h drm/i915/display: convert modeset setup to struct drm_i915_private *i915 2022-06-20 19:28:47 +03:00
intel_modeset_verify.c drm/i915: Introduce intel_crtc_needs_fastset() 2022-10-22 12:38:49 +03:00
intel_modeset_verify.h drm/i915/display: split out modeset verification code 2022-06-17 11:54:56 +03:00
intel_opregion.c drm/i915/display: remove drm_device aliases 2022-10-11 13:34:12 +02:00
intel_opregion.h drm/i915/opregion: add function to check if headless sku 2022-06-16 13:15:36 +03:00
intel_overlay.c drm/i915/reg: stop using implicit dev_priv in DSPCLK_GATE_D 2022-08-31 18:09:23 +03:00
intel_overlay.h
intel_panel.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
intel_panel.h drm/i915: Simplify intel_panel_add_edid_alt_fixed_modes() 2022-09-28 23:27:47 +03:00
intel_pch_display.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
intel_pch_display.h drm/i915: Relocate a few more pch transcoder bits 2022-03-04 18:24:19 +02:00
intel_pch_refclk.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
intel_pch_refclk.h drm/i915: Feed the DPLL output freq back into crtc_state 2022-09-08 14:20:54 +03:00
intel_pipe_crc.c drm/i915: remove circ_buf.h includes 2022-11-15 16:11:45 +02:00
intel_pipe_crc.h
intel_plane_initial.c drm/i915: add display sub-struct to drm_i915_private 2022-08-29 11:41:22 +03:00
intel_plane_initial.h drm/i915/display: refactor initial plane config to a separate file 2021-10-12 12:58:33 +03:00
intel_pps.c drm/i915/edp: wait power off delay at driver remove to optimize probe 2022-11-17 13:29:01 +02:00
intel_pps.h drm/i915/pps: Split PPS init+sanitize in two 2022-05-27 20:26:05 +03:00
intel_psr.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
intel_psr.h drm/i915/display/psr: Lock and unlock PSR around pipe updates 2022-04-06 08:42:58 -07:00
intel_qp_tables.c drm/display: Move DSC header and helpers into display-helper module 2022-04-25 11:19:36 +02:00
intel_qp_tables.h
intel_quirks.c drm/i915: move quirks under display sub-struct 2022-08-31 17:21:51 +03:00
intel_quirks.h drm/i915/quirks: abstract quirks further by making quirk ids an enum 2022-08-31 17:21:47 +03:00
intel_sdvo.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
intel_sdvo.h drm/i915: Only include i915_reg.h from .c files 2022-02-02 07:59:54 -08:00
intel_sdvo_regs.h
intel_snps_phy.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
intel_snps_phy.h drm/i915/mpllb: move mpllb state check to intel_snps_phy.c 2022-06-17 11:54:54 +03:00
intel_snps_phy_regs.h drm/i915: split out intel_display_reg_defs.h 2022-11-11 12:44:49 +02:00
intel_sprite.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
intel_sprite.h drm/i915: un-inline icl_hdr_plane_mask() to simplify includes 2022-11-03 16:20:53 +02:00
intel_tc.c drm/i915/tgl+: Move DKL PHY register definitions to intel_dkl_phy_regs.h 2022-10-26 15:51:17 +03:00
intel_tc.h drm/i915: Fix TypeC mode initialization during system resume 2022-09-27 16:04:06 +03:00
intel_tv.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
intel_tv.h
intel_vbt_defs.h drm/i915/bios: Add the "Disable compression for the Display Port/HDMI external display" bit 2022-09-13 11:43:29 +03:00
intel_vdsc.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
intel_vdsc.h drm/i915: Change bigjoiner state tracking to use the pipe bitmask 2022-02-15 14:41:05 +02:00
intel_vga.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
intel_vga.h
intel_vrr.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
intel_vrr.h drm/i915: Pass intel_connector to intel_vrr_is_capable() 2022-05-27 20:20:40 +03:00
skl_scaler.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
skl_scaler.h
skl_universal_plane.c drm/i915/display: Check source height is > 0 2023-01-17 10:37:06 -05:00
skl_universal_plane.h drm/i915: un-inline icl_hdr_plane_mask() to simplify includes 2022-11-03 16:20:53 +02:00
skl_watermark.c drm/i915: Don't do the WM0->WM1 copy w/a if WM1 is already enabled 2023-02-06 08:15:37 -05:00
skl_watermark.h drm/i915/ipc: move IPC debugfs to skl_watermark.c 2022-09-13 19:55:01 +03:00
vlv_dsi.c drm/i915: stop including i915_irq.h from i915_trace.h 2022-11-11 13:05:19 +02:00
vlv_dsi.h drm/i915/dsi: split out vlv_dsi.h 2021-11-23 13:11:39 +02:00
vlv_dsi_pll.c drm/i915: Feed the DPLL output freq back into crtc_state 2022-09-08 14:20:54 +03:00
vlv_dsi_pll.h drm/i915/dsi: split out vlv_dsi_pll.h 2021-11-23 13:11:36 +02:00
vlv_dsi_pll_regs.h drm/i915/reg: split out vlv_dsi_regs.h and vlv_dsi_pll_regs.h 2022-02-21 12:06:10 +02:00
vlv_dsi_regs.h drm/i915: split out intel_display_reg_defs.h 2022-11-11 12:44:49 +02:00