linux-stable/drivers/gpu/drm/i915
Ville Syrjälä 092706786e drm/i915: Introduce intel_panel_{fixed,downclock}_mode()
Abstract away the details on where we store the fixed/downclock
modes, and also how we select them. Will be useful for static
DRRS (aka. allowing the user to select the refresh rate for the
panel).

We pass in the user requested mode to intel_panel_fixed_mode()
so that in the future it may try to match the refresh rate.
And intel_panel_downclock_mode() gets passed the adjusted_mode
we actually chose to use so that it may find a suitable lower
resresh rate variant.

v2: Hook it up for all encoders
    s/fixed_mode/adjusted_mode/ in intel_panel_downclock_mode() (Jani)
    Elaborate on the choice or arguments for the functions (Jani)

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220311172428.14685-7-ville.syrjala@linux.intel.com
Reviewed-by: Jani Nikula <jani.nikula@intel.com>
2022-03-15 00:14:00 +02:00
..
display drm/i915: Introduce intel_panel_{fixed,downclock}_mode() 2022-03-15 00:14:00 +02:00
gem drm/i915: include linux/highmem.h and linux/swap.h where needed 2022-03-04 11:15:25 +02:00
gt drm/i915: include linux/highmem.h and linux/swap.h where needed 2022-03-04 11:15:25 +02:00
gvt drm/i915: Clean up bxt/glk PLL registers 2022-03-10 11:07:31 +02:00
pxp drm/i915: Use str_yes_no() 2022-03-02 08:48:13 -08:00
selftests drm/i915: Use str_yes_no() 2022-03-02 08:48:13 -08:00
.gitignore
i915_active.c drm/i915: Remove unused bits of i915_vma/active api 2021-12-20 16:26:09 +01:00
i915_active.h drm/i915: Remove unused bits of i915_vma/active api 2021-12-20 16:26:09 +01:00
i915_active_types.h drm/i915/active: remove useless i915_utils.h include 2021-12-13 12:04:44 +02:00
i915_cmd_parser.c drm/i915: include linux/highmem.h and linux/swap.h where needed 2022-03-04 11:15:25 +02:00
i915_cmd_parser.h drm/i915: split out i915_cmd_parser.h from i915_drv.h 2022-01-10 15:43:09 +02:00
i915_config.c drm/i915: remove IS_ACTIVE 2021-10-07 11:04:05 -07:00
i915_debugfs.c drm/i915: Use str_enabled_disabled() 2022-03-02 08:48:20 -08:00
i915_debugfs.h
i915_debugfs_params.c drm/i915: Use to_gt() helper 2021-12-17 21:51:59 -08:00
i915_debugfs_params.h
i915_deps.c drm/i915: Break out the i915_deps utility 2021-12-22 08:52:57 +01:00
i915_deps.h drm/i915: Break out the i915_deps utility 2021-12-22 08:52:57 +01:00
i915_driver.c drm/i915: Use str_enabled_disabled() 2022-03-02 08:48:20 -08:00
i915_driver.h drm/i915: move the DRIVER_* macros to i915_driver.[ch] 2022-02-10 11:44:25 +02:00
i915_drv.h drm/i915: Nuke dev_priv->drrs.type 2022-03-15 00:13:31 +02:00
i915_file_private.h drm/i915: split out i915_file_private.h from i915_drv.h 2022-02-14 13:16:28 +02:00
i915_fixed.h
i915_gem.c Merge tag 'drm-intel-gt-next-2022-02-17' of git://anongit.freedesktop.org/drm/drm-intel into drm-intel-next 2022-02-23 15:03:51 -05:00
i915_gem.h
i915_gem_evict.c Merge tag 'drm-intel-gt-next-2022-02-17' of git://anongit.freedesktop.org/drm/drm-intel into drm-intel-next 2022-02-23 15:03:51 -05:00
i915_gem_evict.h Merge tag 'drm-intel-gt-next-2022-02-17' of git://anongit.freedesktop.org/drm/drm-intel into drm-intel-next 2022-02-23 15:03:51 -05:00
i915_gem_gtt.c Merge tag 'drm-intel-gt-next-2022-02-17' of git://anongit.freedesktop.org/drm/drm-intel into drm-intel-next 2022-02-23 15:03:51 -05:00
i915_gem_gtt.h drm/i915: Remove short-term pins from execbuf, v6. 2022-01-18 12:19:30 +01:00
i915_gem_ww.c
i915_gem_ww.h drm/i915: Ditch the i915_gem_ww_ctx loop member 2021-08-20 09:39:41 +01:00
i915_getparam.c Merge tag 'drm-intel-gt-next-2022-02-17' of git://anongit.freedesktop.org/drm/drm-intel into drm-intel-next 2022-02-23 15:03:51 -05:00
i915_getparam.h drm/i915: split out i915_getparam.h from i915_drv.h 2022-01-10 15:43:05 +02:00
i915_gpu_error.c drm/i915: include linux/highmem.h and linux/swap.h where needed 2022-03-04 11:15:25 +02:00
i915_gpu_error.h drm/i915: move i915_reset_count()/i915_reset_engine_count() out of i915_drv.h 2022-02-14 13:07:11 +02:00
i915_ioc32.c drm/i915: split out i915_getparam.h from i915_drv.h 2022-01-10 15:43:05 +02:00
i915_ioc32.h
i915_ioctl.c drm/i915: split out i915_reg_read_ioctl() to i915_ioctl.[ch] 2022-01-21 09:59:22 +02:00
i915_ioctl.h drm/i915: split out i915_reg_read_ioctl() to i915_ioctl.[ch] 2022-01-21 09:59:22 +02:00
i915_iosf_mbi.h drm/i915: abstraction for iosf to compile on all archs 2021-10-27 00:32:01 -07:00
i915_irq.c drm/i915/reg: split out icl_dsi_regs.h 2022-02-21 12:06:15 +02:00
i915_irq.h drm/i915/hpd: hide struct intel_hotplug_funcs 2022-02-09 13:39:35 +02:00
i915_memcpy.c
i915_memcpy.h
i915_mitigations.c drm/i915: move the DRIVER_* macros to i915_driver.[ch] 2022-02-10 11:44:25 +02:00
i915_mitigations.h
i915_mm.c drm/i915: Skip remap_io_mapping() for non-x86 platforms 2021-12-08 13:26:14 -08:00
i915_mm.h drm/i915: Fix header test for !CONFIG_X86 2022-02-07 12:56:49 +00:00
i915_module.c Merge tag 'drm-intel-gt-next-2022-02-17' of git://anongit.freedesktop.org/drm/drm-intel into drm-intel-next 2022-02-23 15:03:51 -05:00
i915_params.c drm/i915/display: Allow users to disable PSR2 2022-03-03 05:50:47 -08:00
i915_params.h drm/i915: Test all device memory on probing 2021-12-14 15:08:20 +05:30
i915_pci.c drm/i915/dg2: Tile 4 plane format support 2022-02-24 17:34:48 +02:00
i915_pci.h drm/i915/pci: rename functions to have i915_pci prefix 2021-08-26 10:50:19 +03:00
i915_perf.c Merge tag 'drm-intel-gt-next-2022-02-17' of git://anongit.freedesktop.org/drm/drm-intel into drm-intel-next 2022-02-23 15:03:51 -05:00
i915_perf.h
i915_perf_oa_regs.h drm/i915/perf: Express OA register ranges with i915_range 2022-02-02 07:52:23 -08:00
i915_perf_types.h drm/i915: Only include i915_reg.h from .c files 2022-02-02 07:59:54 -08:00
i915_pmu.c drm/i915: Move GT registers to their own header file 2022-02-02 07:59:14 -08:00
i915_pmu.h
i915_priolist_types.h
i915_pvinfo.h
i915_query.c drm/i915: Use to_gt() helper 2021-12-17 21:51:59 -08:00
i915_query.h
i915_reg.h drm/i915: Rename PIPECONF refresh select bits 2022-03-10 17:05:06 +02:00
i915_reg_defs.h drm/i915: Add REG_GENMASK64() and REG_FIELD_GET64() 2022-02-16 15:00:57 +02:00
i915_request.c Merge tag 'drm-intel-gt-next-2022-02-17' of git://anongit.freedesktop.org/drm/drm-intel into drm-intel-next 2022-02-23 15:03:51 -05:00
i915_request.h drm/i915: Use struct vma_resource instead of struct vma_snapshot 2022-01-11 10:54:11 +01:00
i915_scatterlist.c drm: move the buddy allocator from i915 into common drm 2022-01-19 08:17:07 +01:00
i915_scatterlist.h drm/i915: Introduce refcounted sg-tables 2021-11-01 18:10:49 +01:00
i915_scheduler.c
i915_scheduler.h
i915_scheduler_types.h
i915_selftest.h
i915_suspend.c drm/i915: split out PCI config space registers from i915_reg.h 2022-01-10 16:17:46 +02:00
i915_suspend.h
i915_sw_fence.c drm/i915: Drop stealing of bits from i915_sw_fence function pointer 2021-11-30 17:52:15 -08:00
i915_sw_fence.h drm/i915: Drop stealing of bits from i915_sw_fence function pointer 2021-11-30 17:52:15 -08:00
i915_sw_fence_work.c drm/i915: Drop stealing of bits from i915_sw_fence function pointer 2021-11-30 17:52:15 -08:00
i915_sw_fence_work.h
i915_switcheroo.c drm/i915/driver: add i915_driver_ prefix to functions 2021-11-17 11:47:55 +02:00
i915_switcheroo.h
i915_syncmap.c
i915_syncmap.h
i915_sysfs.c drm/i915: Move GT registers to their own header file 2022-02-02 07:59:14 -08:00
i915_sysfs.h
i915_trace.h drm/i915/trace: split out display trace to a separate file 2021-12-09 11:21:46 +02:00
i915_trace_points.c
i915_ttm_buddy_manager.c drm: implement a method to free unused pages 2022-02-22 13:03:00 +01:00
i915_ttm_buddy_manager.h drm: improve drm_buddy_alloc function 2022-02-22 12:54:41 +01:00
i915_user_extensions.c
i915_user_extensions.h
i915_utils.c
i915_utils.h drm/i915: Use str_on_off() 2022-03-02 08:48:23 -08:00
i915_vgpu.c drm/i915: Add object locking to i915_gem_evict_for_node and i915_gem_evict_something, v2. 2022-01-18 12:18:03 +01:00
i915_vgpu.h
i915_vma.c Merge tag 'drm-intel-gt-next-2022-02-17' of git://anongit.freedesktop.org/drm/drm-intel into drm-intel-next 2022-02-23 15:03:51 -05:00
i915_vma.h drm/i915: Add i915_vma_unbind_unlocked, and take obj lock for i915_vma_unbind, v2. 2022-01-18 12:19:29 +01:00
i915_vma_resource.c drm/i915: Fix vma resource freeing 2022-01-26 14:02:31 +01:00
i915_vma_resource.h drm/i915: Use struct vma_resource instead of struct vma_snapshot 2022-01-11 10:54:11 +01:00
i915_vma_types.h Merge drm/drm-next into drm-intel-gt-next 2022-01-18 10:54:02 +00:00
intel_device_info.c drm/i915: Use str_yes_no() 2022-03-02 08:48:13 -08:00
intel_device_info.h drm/i915/dg2: Tile 4 plane format support 2022-02-24 17:34:48 +02:00
intel_dram.c drm/i915: Use str_yes_no() 2022-03-02 08:48:13 -08:00
intel_dram.h
intel_gvt.c drm/i915: Use to_gt() helper 2021-12-17 21:51:59 -08:00
intel_gvt.h
intel_mchbar_regs.h drm/i915: Clean up SSKPD/MLTR defines 2022-02-18 08:42:17 +02:00
intel_memory_region.c drm/i915: Test all device memory on probing 2021-12-14 15:08:20 +05:30
intel_memory_region.h drm/i915/ttm: Drop region reference counting 2021-11-25 09:36:16 +01:00
intel_pch.c drm/i915: s/JSP2/ICP2/ PCH 2022-02-25 19:03:12 +02:00
intel_pch.h drm/i915: s/JSP2/ICP2/ PCH 2022-02-25 19:03:12 +02:00
intel_pci_config.h drm/i915: split out PCI config space registers from i915_reg.h 2022-01-10 16:17:46 +02:00
intel_pcode.c drm/i915: Only include i915_reg.h from .c files 2022-02-02 07:59:54 -08:00
intel_pcode.h drm/i915/pcode: rename sandybridge_pcode_* to snb_pcode_* 2022-01-13 15:20:57 +02:00
intel_pm.c drm/i915: Remove leftover cnl SAGV block time 2022-03-09 18:33:53 +02:00
intel_pm.h drm/i915: Workaround broken BIOS DBUF configuration on TGL/RKL 2022-02-07 12:56:50 +00:00
intel_pm_types.h drm/i915: split out intel_pm_types.h 2021-12-03 11:28:12 +02:00
intel_region_ttm.c drm/i915/ttm: Drop region reference counting 2021-11-25 09:36:16 +01:00
intel_region_ttm.h drm/i915/ttm: Drop region reference counting 2021-11-25 09:36:16 +01:00
intel_runtime_pm.c drm/i915/selftests: Disable runtime pm wakeref tracking for the mock device 2022-02-11 13:22:10 +02:00
intel_runtime_pm.h drm/i915/selftests: Disable runtime pm wakeref tracking for the mock device 2022-02-11 13:22:10 +02:00
intel_sbi.c drm/i915: Only include i915_reg.h from .c files 2022-02-02 07:59:54 -08:00
intel_sbi.h drm/i915: rename intel_sideband.[ch] to intel_sbi.[ch] 2021-10-14 18:05:04 +03:00
intel_step.c drm/i915/adl-n: Add stepping info 2022-03-03 20:40:03 -08:00
intel_step.h drm/i915: Rename GT_STEP to GRAPHICS_STEP 2021-11-02 13:05:40 -07:00
intel_uncore.c drm/i915/gt: Use parameterized RING_MI_MODE 2022-02-16 12:29:46 -08:00
intel_uncore.h drm/i915: Only include i915_reg.h from .c files 2022-02-02 07:59:54 -08:00
intel_wakeref.c
intel_wakeref.h drm/i915/guc: Take engine PM when a context is pinned with GuC submission 2021-10-15 10:37:26 -07:00
intel_wopcm.c drm/i915/wopcm: Handle pre-programmed WOPCM registers 2022-01-26 11:47:24 -08:00
intel_wopcm.h
Kconfig Linux 5.17-rc6 2022-02-28 14:57:14 +10:00
Kconfig.debug
Kconfig.profile
Kconfig.unstable
Makefile drm/i915: Move power well get/put/enable/disable functions to a new file 2022-02-28 17:03:33 +02:00
TODO.txt
vlv_sideband.c drm/i915: Only include i915_reg.h from .c files 2022-02-02 07:59:54 -08:00
vlv_sideband.h drm/i915: split out vlv sideband registers from i915_reg.h 2022-01-10 16:17:50 +02:00
vlv_sideband_reg.h drm/i915: split out vlv sideband registers from i915_reg.h 2022-01-10 16:17:50 +02:00
vlv_suspend.c drm/i915: Use str_on_off() 2022-03-02 08:48:23 -08:00
vlv_suspend.h