Tvrtko Ursulin
32ca5ebfde
drm/i915: Fix possible null pointer dereference after drm_dbg_printer conversion
...
Request can be NULL if no guilty request was identified so simply use
engine->i915 instead.
Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com >
Fixes: d50892a955 ("drm/i915: switch from drm_debug_printer() to device specific drm_dbg_printer()")
Reported-by: Dan Carpenter <dan.carpenter@linaro.org >
Cc: Jani Nikula <jani.nikula@intel.com >
Cc: Luca Coelho <luciano.coelho@intel.com >
Cc: Maxime Ripard <mripard@kernel.org >
Cc: Jani Nikula <jani.nikula@linux.intel.com >
Acked-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Link: https://lore.kernel.org/r/20240219131423.1854991-1-tvrtko.ursulin@linux.intel.com
Signed-off-by: Maxime Ripard <mripard@kernel.org >
2024-02-22 18:50:06 +01:00
Maxime Ripard
fb1e881273
drm/i915/tv: Fix TV mode
...
Commit 1fd4a5a36f ("drm/connector: Rename legacy TV property") failed
to update all the users of the struct drm_tv_connector_state mode field,
which resulted in a build failure in i915.
However, a subsequent commit in the same series reintroduced a mode
field in that structure, with a different semantic but the same type,
with the assumption that all previous users were updated.
Since that didn't happen, the i915 driver now compiles, but mixes
accesses to the legacy_mode field and the newer mode field, but with the
previous semantics.
This obviously doesn't work very well, so we need to update the accesses
that weren't in the legacy renaming commit.
Fixes: 1fd4a5a36f ("drm/connector: Rename legacy TV property")
Reported-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Signed-off-by: Maxime Ripard <mripard@kernel.org >
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240220131251.453060-1-mripard@kernel.org
(cherry picked from commit bf7626f19d )
Signed-off-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com >
2024-02-21 09:30:20 +02:00
Maxime Ripard
bf7626f19d
drm/i915/tv: Fix TV mode
...
Commit 1fd4a5a36f ("drm/connector: Rename legacy TV property") failed
to update all the users of the struct drm_tv_connector_state mode field,
which resulted in a build failure in i915.
However, a subsequent commit in the same series reintroduced a mode
field in that structure, with a different semantic but the same type,
with the assumption that all previous users were updated.
Since that didn't happen, the i915 driver now compiles, but mixes
accesses to the legacy_mode field and the newer mode field, but with the
previous semantics.
This obviously doesn't work very well, so we need to update the accesses
that weren't in the legacy renaming commit.
Fixes: 1fd4a5a36f ("drm/connector: Rename legacy TV property")
Reported-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Signed-off-by: Maxime Ripard <mripard@kernel.org >
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240220131251.453060-1-mripard@kernel.org
2024-02-20 12:48:16 -05:00
Jiri Slaby (SUSE)
4101f25ae2
drm/i915: remove intel_memory_region_ops::flags
...
intel_memory_region_ops::flags was never used since its addition in
commit 232a6ebae4 (drm/i915: introduce intel_memory_region). Drop it.
Found by https://github.com/jirislaby/clang-struct .
Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org >
Cc: Jani Nikula <jani.nikula@linux.intel.com >
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com >
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com >
Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com >
Cc: intel-gfx@lists.freedesktop.org
Acked-by: Jani Nikula <jani.nikula@intel.com >
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240216065326.6910-22-jirislaby@kernel.org
2024-02-19 15:36:41 -05:00
Jiri Slaby (SUSE)
4c1f2a1e2b
drm/i915: remove i915_vma::obj_hash
...
i915_vma::obj_hash was never used since its addition in commit
4ff4b44cbb (drm/i915: Store a direct lookup from object handle to
vma). Drop it.
Found by https://github.com/jirislaby/clang-struct .
Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org >
Cc: Jani Nikula <jani.nikula@linux.intel.com >
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com >
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com >
Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com >
Cc: intel-gfx@lists.freedesktop.org
Acked-by: Jani Nikula <jani.nikula@intel.com >
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240216065326.6910-21-jirislaby@kernel.org
2024-02-19 15:36:34 -05:00
Jiri Slaby (SUSE)
95f4e97f5e
drm/i915: remove execute_cb::signal
...
execute_cb::signal is not used since commit 5ac545b8b0
(drm/i915/request: Remove the hook from await_execution). Drop it.
Found by https://github.com/jirislaby/clang-struct .
Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org >
Cc: Jani Nikula <jani.nikula@linux.intel.com >
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com >
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com >
Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com >
Cc: intel-gfx@lists.freedesktop.org
Acked-by: Jani Nikula <jani.nikula@intel.com >
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240216065326.6910-20-jirislaby@kernel.org
2024-02-19 15:36:28 -05:00
Jiri Slaby (SUSE)
7be6ff785a
drm/i915: remove intel_gvt_irq::pending_events
...
intel_gvt_irq::pending_events was never used since its addition in
commit c8fe6a6811 (drm/i915/gvt: vGPU interrupt virtualization.).
Drop it.
Found by https://github.com/jirislaby/clang-struct .
Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org >
Cc: Jani Nikula <jani.nikula@linux.intel.com >
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com >
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com >
Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com >
Cc: intel-gfx@lists.freedesktop.org
Acked-by: Jani Nikula <jani.nikula@intel.com >
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240216065326.6910-19-jirislaby@kernel.org
2024-02-19 15:36:23 -05:00
Jiri Slaby (SUSE)
4ced7884ac
drm/i915: remove intel_gvt_event_info::policy
...
intel_gvt_event_info::policy was never used since its addition in
commit c8fe6a6811 (drm/i915/gvt: vGPU interrupt virtualization.).
Drop it.
Found by https://github.com/jirislaby/clang-struct .
Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org >
Cc: Jani Nikula <jani.nikula@linux.intel.com >
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com >
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com >
Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com >
Cc: intel-gfx@lists.freedesktop.org
Acked-by: Jani Nikula <jani.nikula@intel.com >
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240216065326.6910-18-jirislaby@kernel.org
2024-02-19 15:36:17 -05:00
Jiri Slaby (SUSE)
ad180eb410
drm/i915: remove intel_gvt_irq_info::warned
...
intel_gvt_irq_info::warned was never used since its addition in commit
c8fe6a6811 (drm/i915/gvt: vGPU interrupt virtualization.). Drop it.
Found by https://github.com/jirislaby/clang-struct .
Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org >
Cc: Jani Nikula <jani.nikula@linux.intel.com >
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com >
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com >
Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com >
Cc: intel-gfx@lists.freedesktop.org
Acked-by: Jani Nikula <jani.nikula@intel.com >
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240216065326.6910-17-jirislaby@kernel.org
2024-02-19 15:36:06 -05:00
Jiri Slaby (SUSE)
58b67c04cd
drm/i915: remove gvt_mmio_block::device
...
gvt_mmio_block::device is not used since commit e0f74ed463 (i915/gvt:
Separate the MMIO tracking table from GVT-g). Drop it.
Found by https://github.com/jirislaby/clang-struct .
Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org >
Cc: Jani Nikula <jani.nikula@linux.intel.com >
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com >
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com >
Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com >
Cc: intel-gfx@lists.freedesktop.org
Acked-by: Jani Nikula <jani.nikula@intel.com >
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240216065326.6910-16-jirislaby@kernel.org
2024-02-19 15:35:59 -05:00
Jiri Slaby (SUSE)
7c25ef4454
drm/i915: remove intel_vgpu::intx_trigger
...
intel_vgpu::intx_trigger was never used since its addition in commit
f30437c5e7 (drm/i915/gvt: add KVMGT support). Drop it.
Found by https://github.com/jirislaby/clang-struct .
Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org >
Cc: Jani Nikula <jani.nikula@linux.intel.com >
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com >
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com >
Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com >
Cc: intel-gfx@lists.freedesktop.org
Acked-by: Jani Nikula <jani.nikula@intel.com >
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240216065326.6910-15-jirislaby@kernel.org
2024-02-19 15:35:54 -05:00
Jiri Slaby (SUSE)
c1d8fa8163
drm/i915: remove intel_vgpu_opregion::mapped
...
intel_vgpu_opregion::mapped is not used since commit 367748066e
(drm/i915/gvt: remove enum hypervisor_type). Drop it.
Found by https://github.com/jirislaby/clang-struct .
Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org >
Cc: Jani Nikula <jani.nikula@linux.intel.com >
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com >
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com >
Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com >
Cc: intel-gfx@lists.freedesktop.org
Acked-by: Jani Nikula <jani.nikula@intel.com >
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240216065326.6910-14-jirislaby@kernel.org
2024-02-19 15:35:49 -05:00
Jiri Slaby (SUSE)
0c274be3f2
drm/i915: remove intel_vgpu_fence::base
...
intel_vgpu_fence::base was never used since its addition in commit
28a60dee2c (drm/i915/gvt: vGPU HW resource management). Drop it.
Found by https://github.com/jirislaby/clang-struct .
Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org >
Cc: Jani Nikula <jani.nikula@linux.intel.com >
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com >
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com >
Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com >
Cc: intel-gfx@lists.freedesktop.org
Acked-by: Jani Nikula <jani.nikula@intel.com >
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240216065326.6910-13-jirislaby@kernel.org
2024-02-19 15:35:43 -05:00
Jiri Slaby (SUSE)
dcbe15d920
drm/i915: remove intel_vgpu_gtt::active_ppgtt_mm_bitmap
...
intel_vgpu_gtt::active_ppgtt_mm_bitmap was never used since its
addition in commit 2707e44466 (drm/i915/gvt: vGPU graphics memory
virtualization). Drop it.
Found by https://github.com/jirislaby/clang-struct .
Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org >
Cc: Jani Nikula <jani.nikula@linux.intel.com >
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com >
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com >
Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com >
Cc: intel-gfx@lists.freedesktop.org
Acked-by: Jani Nikula <jani.nikula@intel.com >
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240216065326.6910-12-jirislaby@kernel.org
2024-02-19 15:35:36 -05:00
Jiri Slaby (SUSE)
0b8722d65a
drm/i915: remove i915_perf_stream::size_exponent
...
i915_perf_stream::size_exponent was never used since its addition in
commit a37f08a882 (drm/i915/perf: Refactor oa object to better manage
resources). Drop it.
Found by https://github.com/jirislaby/clang-struct .
Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org >
Cc: Jani Nikula <jani.nikula@linux.intel.com >
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com >
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com >
Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com >
Cc: intel-gfx@lists.freedesktop.org
Acked-by: Jani Nikula <jani.nikula@intel.com >
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240216065326.6910-11-jirislaby@kernel.org
2024-02-19 15:35:30 -05:00
Jiri Slaby (SUSE)
c5d859e34c
drm/i915: remove i915_drm_client::id
...
i915_drm_client::id is not used since commit e894b724c3 (drm/i915:
Use the fdinfo helper). Drop it.
Found by https://github.com/jirislaby/clang-struct .
Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org >
Cc: Jani Nikula <jani.nikula@linux.intel.com >
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com >
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com >
Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com >
Cc: intel-gfx@lists.freedesktop.org
Acked-by: Jani Nikula <jani.nikula@intel.com >
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240216065326.6910-10-jirislaby@kernel.org
2024-02-19 15:35:23 -05:00
Jiri Slaby (SUSE)
394a1376d8
drm/i915: remove intel_guc::ads_engine_usage_size
...
intel_guc::ads_engine_usage_size was never used since its addition in
commit 77cdd054dd (drm/i915/pmu: Connect engine busyness stats from
GuC to pmu). Drop it.
Found by https://github.com/jirislaby/clang-struct .
Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org >
Cc: Jani Nikula <jani.nikula@linux.intel.com >
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com >
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com >
Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com >
Cc: intel-gfx@lists.freedesktop.org
Acked-by: Jani Nikula <jani.nikula@intel.com >
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240216065326.6910-9-jirislaby@kernel.org
2024-02-19 15:35:17 -05:00
Jiri Slaby (SUSE)
dd0eb202bf
drm/i915: remove intel_vbt_panel_data::edp::initialized
...
intel_vbt_panel_data::edp::initialized is not used since commit
9f0e7ff4b3 (drm/i915: fetch eDP configuration data from the VBT).
Drop it.
Found by https://github.com/jirislaby/clang-struct .
Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org >
Cc: Jani Nikula <jani.nikula@linux.intel.com >
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com >
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com >
Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com >
Cc: intel-gfx@lists.freedesktop.org
Acked-by: Jani Nikula <jani.nikula@intel.com >
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240216065326.6910-8-jirislaby@kernel.org
2024-02-19 15:35:11 -05:00
Jiri Slaby (SUSE)
8266cdae3c
drm/i915: remove intel_vgpu_workload::{ring_context, restore_inhibit}
...
intel_vgpu_workload::ring_context was never used since its addition in
commit 28c4c6ca7f (drm/i915/gvt: vGPU workload submission) and
::restore_inhibit since its addition in commit e473405783
(drm/i915/gvt: vGPU workload scheduler). Drop them.
Found by https://github.com/jirislaby/clang-struct .
Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org >
Cc: Jani Nikula <jani.nikula@linux.intel.com >
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com >
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com >
Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com >
Cc: intel-gfx@lists.freedesktop.org
Acked-by: Jani Nikula <jani.nikula@intel.com >
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240216065326.6910-7-jirislaby@kernel.org
2024-02-19 15:35:01 -05:00
Jiri Slaby (SUSE)
9fda1fd909
drm/i915: remove intel_gvt_mmio_info::{device, addr_range}
...
intel_gvt_mmio_info::device is not used since commit e0f74ed463
(i915/gvt: Separate the MMIO tracking table from GVT-g) and ::addr_range
was never used since its addition in commit 12d14cc43b (drm/i915/gvt:
Introduce a framework for tracking HW registers.). Drop them.
Found by https://github.com/jirislaby/clang-struct .
Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org >
Cc: Jani Nikula <jani.nikula@linux.intel.com >
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com >
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com >
Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com >
Cc: intel-gfx@lists.freedesktop.org
Acked-by: Jani Nikula <jani.nikula@intel.com >
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240216065326.6910-6-jirislaby@kernel.org
2024-02-19 15:34:54 -05:00
Jiri Slaby (SUSE)
fe7ed0e9dc
drm/i915: remove intel_gvt_gtt::{mm_alloc_page_table, mm_free_page_table}
...
intel_gvt_gtt::{mm_alloc_page_table,mm_free_page_table} are not used
since commit ede9d0cfcb (drm/i915/gvt: Rework shadow graphic memory
management code). Drop them.
Found by https://github.com/jirislaby/clang-struct .
Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org >
Cc: Jani Nikula <jani.nikula@linux.intel.com >
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com >
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com >
Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com >
Cc: intel-gfx@lists.freedesktop.org
Acked-by: Jani Nikula <jani.nikula@intel.com >
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240216065326.6910-5-jirislaby@kernel.org
2024-02-19 15:34:46 -05:00
Jiri Slaby (SUSE)
de2fa4ef66
drm/i915: remove intel_dsi::{port_bits,hs}
...
intel_dsi::port_bits is unused since commit 369602d370 (drm/i915: Add
support for port enable/disable for dual link configuration) and ::hs is
unused likely since commit 063c86f60a (drm/i915/dsi: remove
intel_dsi_cmd.c and the unused functions therein). Drop them.
Found by https://github.com/jirislaby/clang-struct .
Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org >
Cc: Jani Nikula <jani.nikula@linux.intel.com >
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com >
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com >
Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com >
Cc: intel-gfx@lists.freedesktop.org
Acked-by: Jani Nikula <jani.nikula@intel.com >
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240216065326.6910-4-jirislaby@kernel.org
2024-02-19 15:34:37 -05:00
Jiri Slaby (SUSE)
172c52e276
drm/i915: remove structs intel_vgpu_pipe_format and intel_vgpu_fb_format
...
Both struct intel_vgpu_pipe_format and intel_vgpu_fb_format were never
used since its addition in commit 9f31d1063b (drm/i915/gvt: Add
framebuffer decoder support). Drop them.
Found by https://github.com/jirislaby/clang-struct .
Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org >
Cc: Jani Nikula <jani.nikula@linux.intel.com >
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com >
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com >
Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com >
Cc: intel-gfx@lists.freedesktop.org
Acked-by: Jani Nikula <jani.nikula@intel.com >
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240216065326.6910-3-jirislaby@kernel.org
2024-02-19 15:34:17 -05:00
Jiri Slaby (SUSE)
a9b5f42233
drm/i915: remove unused intel_dvo_dev_ops hooks
...
struct intel_dvo_dev_ops's ::create_resources(), ::prepare(),
::commit::, and get_modes() are all unused since their addition in
79e539453b (DRM: i915: add mode setting support). Drop all of them.
Found by https://github.com/jirislaby/clang-struct .
Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org >
Cc: Jani Nikula <jani.nikula@linux.intel.com >
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com >
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com >
Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com >
Cc: intel-gfx@lists.freedesktop.org
Acked-by: Jani Nikula <jani.nikula@intel.com >
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240216065326.6910-2-jirislaby@kernel.org
2024-02-19 15:33:13 -05:00
Ville Syrjälä
79e2ea2eaa
drm/i915/cdclk: Document CDCLK update methods
...
Add a bit of documentation to briefly explain the methods
by which we can change the CDCLK frequency.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240207013334.29606-5-ville.syrjala@linux.intel.com
Reviewed-by: Gustavo Sousa <gustavo.sousa@intel.com >
2024-02-16 17:11:29 +02:00
Ville Syrjälä
c0151c695f
drm/i915/cdclk: Remove the hardcoded divider from cdclk_compute_crawl_and_squash_midpoint()
...
cdclk_compute_crawl_and_squash_midpoint() was still assuming
that cd2x divider == 1 (ie. full divider == 2). Remove that
assumption by computing the dividers properly.
We'll also toss in a WARN in case the divider somehow ends
up different between the old and new cdclk configs. That should
never happen given we have div==2 in all the cdclk table entries
for the affected platforms.
If in the future we need a config where the divider also needs
to be changed then we likely need to add an extra step into the
cdclk programming sequence to make sure things stay within
legal limits throughout the process.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240207013334.29606-4-ville.syrjala@linux.intel.com
Reviewed-by: Gustavo Sousa <gustavo.sousa@intel.com >
2024-02-16 17:11:20 +02:00
Ville Syrjälä
76184fa3d3
drm/i915/cdclk: Squash waveform is 16 bits
...
Have cdclk_squash_waveform() return a u16 since that's
how many bits we have in the waveform. We alreday use
u16 everywhere else.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240207013334.29606-3-ville.syrjala@linux.intel.com
Reviewed-by: Gustavo Sousa <gustavo.sousa@intel.com >
2024-02-16 17:10:53 +02:00
Ville Syrjälä
26aba0d1c3
drm/i915/cdclk: Extract cdclk_divider()
...
Extract the cdclk divider calculation into a helper. We'll have
more users of this soon. We can now also get rid of the intermediate
'unsquashed_cdclk' variable.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240207013334.29606-2-ville.syrjala@linux.intel.com
Reviewed-by: Gustavo Sousa <gustavo.sousa@intel.com >
2024-02-16 17:10:06 +02:00
Alex Deucher
905a176a3c
drm/i915: Update shared stats to use the new gem helper
...
Switch to using the new gem shared memory stats helper
rather than hand rolling it.
Link: https://lore.kernel.org/all/20231207180225.439482-1-alexander.deucher@amd.com/
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Christian König <christian.koenig@amd.com >
2024-02-16 12:52:50 +01:00
Dave Airlie
9ac4beb757
Merge tag 'drm-misc-next-2024-02-15' of git://anongit.freedesktop.org/drm/drm-misc into drm-next
...
drm-misc-next for v6.9:
UAPI Changes:
Cross-subsystem Changes:
arch:
- powerpc/ps3: select CONFIG_VIDEO
Core Changes:
ci:
- msm: fix apq8016 runner
display:
- use newer DRM print helpers
documentation:
- fix typos
print:
- add device-specific error and debug printers
sysfb:
- set Linux parent device for firmware framebuffer
tests:
- mm: use newer DRM print helpers
Driver Changes:
bridge:
- switch to ->read_edid callback throughout the bridge
drivers
- remove old ->get_edid callback
i915:
- use newer DRM print helpers
lima:
- improve stability by fixes to error handling and recovery
mediathek:
- switch to ->read_edid callback
msm:
- switch to ->read_edid callback
omap:
- switch to ->read_edid callback
panel:
- add Powkiddy RGB10MAX3 plus DT bindings
- st7703: support panel rotation plus DT bindings
rockchip:
- DT bindings: remove port, add power-domains
xe:
- use newer DRM print helpers
xlnx:
- switch to ->read_edid callback
Signed-off-by: Dave Airlie <airlied@redhat.com >
# -----BEGIN PGP SIGNATURE-----
#
# iQEzBAABCgAdFiEEchf7rIzpz2NEoWjlaA3BHVMLeiMFAmXOD/oACgkQaA3BHVML
# eiMWMAgArTVXF4UQ+FUxYZB5QTm2veYIpilvwmzaQLNxsM9SsWpzwMIVAi+xf93g
# uqUqkl6QvZ9pJg6bxuXRNcJw/GObIO4x6tn+LkbccczgHiHwvn6ydNdUoMx8ulne
# EsGC0z8bb5Gpwh9b/pnBul2AoIE7PHAJltgH271/O2xnhFMUbchQ0ckHvWnn8/GA
# Nef145ySX4gkYtY8u2TRr4r6Bkp7Tpiyv6ipU7Cpu7KqyveTDMx3c9r5FaiHnJT/
# Hx/5s87q0Bx2m+iNjlBLJzYjF2UWth+pbfiu3xwyWOE7hdkPLwCQ5mqHWcFFqxfb
# Vuj9jP+Vb68L7EvGpq2LArLdhZjHIQ==
# =SsjX
# -----END PGP SIGNATURE-----
# gpg: Signature made Thu 15 Feb 2024 23:22:02 AEST
# gpg: using RSA key 7217FBAC8CE9CF6344A168E5680DC11D530B7A23
# gpg: Can't check signature: No public key
From: Thomas Zimmermann <tzimmermann@suse.de >
Link: https://patchwork.freedesktop.org/patch/msgid/20240215132610.GA1464@localhost.localdomain
2024-02-16 13:16:40 +10:00
Dave Airlie
6f167a3673
Merge tag 'drm-intel-gt-next-2024-02-15' of git://anongit.freedesktop.org/drm/drm-intel into drm-next
...
UAPI Changes:
- Add GuC submission interface version query (Tvrtko Ursulin)
Driver Changes:
Fixes/improvements/new stuff:
- Atomically invalidate userptr on mmu-notifier (Jonathan Cavitt)
- Update handling of MMIO triggered reports (Umesh Nerlige Ramappa)
- Don't make assumptions about intel_wakeref_t type (Jani Nikula)
- Add workaround 14019877138 [xelpg] (Tejas Upadhyay)
- Allow for very slow HuC loading [huc] (John Harrison)
- Flush context destruction worker at suspend [guc] (Alan Previn)
- Close deregister-context race against CT-loss [guc] (Alan Previn)
- Avoid circular locking issue on busyness flush [guc] (John Harrison)
- Use rc6.supported flag from intel_gt for rc6_enable sysfs (Juan Escamilla)
- Reflect the true and current status of rc6_enable (Juan Escamilla)
- Wake GT before sending H2G message [mtl] (Vinay Belgaumkar)
- Restart the heartbeat timer when forcing a pulse (John Harrison)
Future platform enablement:
- Extend driver code of Xe_LPG to Xe_LPG+ [xelpg] (Harish Chegondi)
- Extend some workarounds/tuning to gfx version 12.74 [xelpg] (Matt Roper)
Miscellaneous:
- Reconcile Excess struct member kernel-doc warnings (Randy Dunlap)
- Change wa and EU_PERF_CNTL registers to MCR type [guc] (Shuicheng Lin)
- Add flex arrays to struct i915_syncmap (Erick Archer)
- Increasing the sleep time for live_rc6_manual [selftests] (Anirban Sk)
Signed-off-by: Dave Airlie <airlied@redhat.com >
From: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/Zc3iIVsiAwo+bu10@tursulin-desk
2024-02-16 11:19:15 +10:00
Dave Airlie
b13cfb445c
Merge tag 'drm-intel-next-2024-02-07' of git://anongit.freedesktop.org/drm/drm-intel into drm-next
...
drm/i915 feature pull for v6.9:
Features and functionality:
- Early transport for panel replay and PSR (Jouni)
- New ARL PCI IDs (Matt)
- DP TPS4 PHY test pattern support (Khaled)
Refactoring and cleanups:
- Unify and improve VSC SDP for PSR and non-PSR cases (Jouni)
- Refactor memory regions and improve debug logging (Ville)
- Rework global state serialization (Ville)
- Remove unused CDCLK divider fields (Gustavo)
- Unify HDCP connector logging format (Jani)
- Use display instead of graphics version in display code (Jani)
- Move VBT and opregion debugfs next to the implementation (Jani)
- Abstract opregion interface, use opaque type (Jani)
Fixes:
- Fix MTL stolen memory access (Ville)
- Fix initial display plane readout for MTL (Ville)
- Fix HPD handling during driver init/shutdown (Imre)
- Cursor vblank evasion fixes (Ville)
- Various VSC SDP fixes (Jouni)
- Allow PSR mode changes without full modeset (Jouni)
- Fix CDCLK sanitization on module load for Xe2_LPD (Gustavo)
- Fix the max DSC bpc supported by the source (Ankit)
- Add missing LNL ALPM AUX wake configuration (Jouni)
- Cx0 PHY state readout and verify fixes (Mika)
- Fix PSR (panel replay) debugfs for MST connectors (Imre)
- Fail HDCP repeater authentication if Type1 device not present (Suraj)
- Ratelimit debug logging in vm_fault_ttm (Nirmoy)
- Use a fake PCH for MTL because south display is not on the PCH (Haridhar)
- Disable DSB for Xe driver for now (José)
- Fix some LNL display register changes (Lucas)
- Fix build on ChromeOS (Paz Zcharya)
- Preserve current shared DPLL for fastsets on Type-C ports (Ville)
- Fix state checker warnings for MG/TC/TBT PLLs (Ville)
- Fix HDCP repeater ctl register value on errors (Jani)
- Allow FBC with CCS modifiers on SKL+ (Ville)
- Fix HDCP GGTT pinning (Ville)
DRM core changes:
- Add ratelimited drm dbg print (Nirmoy)
- DPCD PSR early transport macro (Jouni)
Merges:
- Backmerge drm-next to bring Xe driver to drm-intel-next (Jani)
Signed-off-by: Dave Airlie <airlied@redhat.com >
From: Jani Nikula <jani.nikula@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/87cyt8cxsh.fsf@intel.com
2024-02-16 06:52:04 +10:00
John Harrison
eb927f01df
drm/i915/gt: Restart the heartbeat timer when forcing a pulse
...
The context persistence code does things like send super high priority
heartbeat pulses to ensure any leaked context can still be pre-empted
and thus isn't a total denial of service but only a minor denial of
service. Unfortunately, it wasn't bothering to restart the heartbeat
worker with a fresh timeout. Thus, if a persistent context happened to
be closed just before the heartbeat was going to go ping anyway then
the forced pulse would get a negligble execution time. And as the
forced pulse is super high priority, the worker thread's next step is
a reset. Which means a potentially innocent system randomly goes boom
when attempting to close a context. So, force a re-schedule of the
worker thread with the appropriate timeout.
Signed-off-by: John Harrison <John.C.Harrison@Intel.com >
Reviewed-by: Andi Shyti <andi.shyti@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240110210216.4125092-1-John.C.Harrison@Intel.com
2024-02-14 17:17:35 -08:00
Ville Syrjälä
1b923307a1
drm/i915: Enable fastboot across the board
...
There's nothing magical about vlv+ platforms vs. fastboot.
If it works somewhere it should work everywhere, assuming
we've not missed any crucial state checks. That seems unlikely
on older platforms with less state to check anyway.
Just enable fastboot across the board, and the remove the
remnants of the optional stuff (we already removed the
modparam for fastboot anyway).
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240209183809.16887-6-ville.syrjala@linux.intel.com
Reviewed-by: Mika Kahola <mika.kahola@intel.com >
2024-02-15 01:44:23 +02:00
Ville Syrjälä
7ab52cb348
drm/i915: Add PLL .compare_hw_state() vfunc
...
Chunk up the humongous dpll_hw_state comparison check into per-platform
variants, implemented in the dpll_mgr. This is step one in allowing
each platform (or perhaps even PLL) type to have a custom hw state
structure instead of having to smash it all into one.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240209183809.16887-5-ville.syrjala@linux.intel.com
Reviewed-by: Mika Kahola <mika.kahola@intel.com >
2024-02-15 01:43:59 +02:00
Ville Syrjälä
b56e24be59
drm/i915: Reuse ibx_dump_hw_state() for gmch platforms
...
GMCH platform DPLLs are similar to the IBX+ PCH DPLLs so
we can just use the same state dump function for both.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240209183809.16887-4-ville.syrjala@linux.intel.com
Reviewed-by: Mika Kahola <mika.kahola@intel.com >
2024-02-15 01:42:13 +02:00
Ville Syrjälä
8d18f12f97
drm/i915: Include the CRTC name in the ELD buffer mismatch
...
Most crtc state mismatches include the CRTC id+name in the
prints. Also include it in the ELD buffer mismatch
prints.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240209183809.16887-3-ville.syrjala@linux.intel.com
Reviewed-by: Mika Kahola <mika.kahola@intel.com >
2024-02-15 01:41:48 +02:00
Ville Syrjälä
733c454e0d
drm/i915: Fix PLL state check for gmch platforms
...
GMCH DPLL state check was mistakenly removed in
commit 87fc875a2b ("drm/i915/dg2: Skip shared DPLL handling").
Bring it back.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240209183809.16887-2-ville.syrjala@linux.intel.com
Reviewed-by: Mika Kahola <mika.kahola@intel.com >
2024-02-15 01:41:26 +02:00
Ravi Kumar Vodapalli
d9b904d2ef
drm/i915/display: update pll values in sync with Bspec for MTL
...
DP/eDP and HDMI C20 PHY PLL values were updated for MTL platform
Signed-off-by: Ravi Kumar Vodapalli <ravi.kumar.vodapalli@intel.com >
Reviewed-by: Mika Kahola <mika.kahola@intel.com >
Signed-off-by: Matt Roper <matthew.d.roper@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240214070930.1028456-1-ravi.kumar.vodapalli@intel.com
2024-02-14 09:27:25 -08:00
Tvrtko Ursulin
b112364867
drm/i915: Add GuC submission interface version query
...
Add a new query to the GuC submission interface version.
Mesa intends to use this information to check for old firmware versions
with a known bug where using the render and compute command streamers
simultaneously can cause GPU hangs due issues in firmware scheduling.
Based on patches from Vivaik and Joonas.
Compile tested only.
v2:
* Added branch version.
Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com >
Cc: Kenneth Graunke <kenneth@whitecape.org >
Cc: Jose Souza <jose.souza@intel.com >
Cc: Sagar Ghuge <sagar.ghuge@intel.com >
Cc: Paulo Zanoni <paulo.r.zanoni@intel.com >
Cc: John Harrison <John.C.Harrison@Intel.com >
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com >
Cc: Jani Nikula <jani.nikula@intel.com >
Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com >
Cc: Vivaik Balasubrawmanian <vivaik.balasubrawmanian@intel.com >
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com >
Reviewed-by: José Roberto de Souza <jose.souza@intel.com >
Tested-by: José Roberto de Souza <jose.souza@intel.com >
Signed-off-by: José Roberto de Souza <jose.souza@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240208082510.1363268-1-tvrtko.ursulin@linux.intel.com
2024-02-14 07:22:50 -08:00
Anirban Sk
599b0d8ce6
drm/i915/selftests: Increasing the sleep time for live_rc6_manual
...
Sometimes gt_pm live_rc6_manual selftest fails due to no power being
measured for the rc6 disabled period. Therefore increasing the rc6 disable
period from 250ms to 1000ms to rule out such sporadic failure.
v3:
- More descriptive and improved commit message (Anshuman)
Signed-off-by: Anirban Sk <sk.anirban@intel.com >
Reviewed-by: Anshuman Gupta <anshuman.gupta@intel.com >
Signed-off-by: Anshuman Gupta <anshuman.gupta@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240212050738.1162198-1-sk.anirban@intel.com
2024-02-13 19:55:52 +05:30
Imre Deak
3a86cb16ab
drm/i915: Prevent HW access during init from connector get_modes hooks
...
Prevent accessing the HW from the get_modes hooks of connectors deriving
the mode list from the display's EDID. drm_edid_connector_add_modes()
will return the mode list based on the EDID which was cached during a
previous detection/get_modes call.
This also fixes the NULL deref problem (10085) which was
introduced/revealed by
commit bab87ef4db ("drm/i915: Disable hotplug detection handlers during driver init/shutdown")
After the above change MST connectors will not change state during
driver init/shutdown; thus some of these connectors with no I2C/DDC
adapter registered for them (since the given MST port has no sink
connected) may stay then in the 'unknown' connector status. The
get_modes() hook should not try to use the I2C/DDC adapter in this state
(which would lead to the above NULL deref) which this patch ensures.
v2:
- Remove the redundant check from intel_crt_ddc_get_modes().
- Rebase on latest drm-tip.
- Add Fixes: line / related commit notes.
Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/10085
Fixes: bab87ef4db ("drm/i915: Disable hotplug detection handlers during driver init/shutdown")
Signed-off-by: Imre Deak <imre.deak@intel.com >
Reviewed-by: Jouni Högander <jouni.hogander@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240212175237.2625812-2-imre.deak@intel.com
2024-02-13 13:24:16 +02:00
Imre Deak
5c5a7fa612
drm/i915: Prevent HW access during init from SDVO TV get_modes hook
...
Prevent accessing the HW from the SDVO/TV get_modes connector hook.
Returning 0 from the hook will make the caller -
drm_helper_probe_single_connector_modes() - return a default/EDID
override mode list to users. This matches the case where
intel_sdvo_get_tv_modes() fails to retrieve the current mode list due to
a HW access failure.
v2: Clarify the commit message wrt. which modes get_modes() returns. (Jouni)
Signed-off-by: Imre Deak <imre.deak@intel.com >
Reviewed-by: Jouni Högander <jouni.hogander@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240212175237.2625812-1-imre.deak@intel.com
2024-02-13 13:24:16 +02:00
Stanislav Lisovskiy
00c3959d63
drm/i915: Add bigjoiner force enable option to debugfs
...
For validation purposes, it might be useful to be able to
force Bigjoiner mode, even if current dotclock/resolution
do not require that.
Lets add such to option to debugfs.
v2: - Apparently intel_dp_need_bigjoiner can't be used, when
debugfs entry is created so lets just check manually
the DISPLAY_VER.
v3: - Switch to intel_connector from drm_connector(Jani Nikula)
- Remove redundant modeset lock(Jani Nikula)
- Use kstrtobool_from_user for boolean value(Jani Nikula)
v4: - Apply the changes to proper function(Jani Nikula)
v5: - Removed unnecessary check from i915_bigjoiner_enable_show
(Ville Syrjälä)
- Added eDP connector check to intel_connector_debugfs_add
(Ville Syrjälä)
- Removed debug message in order to prevent dmesg flooding
(Ville Syrjälä)
v6: - Assume now always that m->private is intel_connector
- Fixed other similar conflicts
v7: - Move bigjoiner force option to intel_connector(Ville Syrjälä)
- Use DEFINE_SHOW_STORE_ATTRIBUTE instead of defining fops
manually.(Ville Syrjälä)
v8: - Pass intel_connector to debugfs_create_file, instead of drm_connector.
(Jani Nikula)
Signed-off-by: Stanislav Lisovskiy <stanislav.lisovskiy@intel.com >
Acked-by: Jani Nikula <jani.nikula@intel.com >
Signed-off-by: Stanislav Lisovskiy <stanislav.lisovskiy@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240212125011.66174-1-uma.shankar@intel.com
2024-02-13 12:42:55 +02:00
Sakari Ailus
c0ef3df8db
PM: runtime: Simplify pm_runtime_get_if_active() usage
...
There are two ways to opportunistically increment a device's runtime PM
usage count, calling either pm_runtime_get_if_active() or
pm_runtime_get_if_in_use(). The former has an argument to tell whether to
ignore the usage count or not, and the latter simply calls the former with
ign_usage_count set to false. The other users that want to ignore the
usage_count will have to explicitly set that argument to true which is a
bit cumbersome.
To make this function more practical to use, remove the ign_usage_count
argument from the function. The main implementation is in a static
function called pm_runtime_get_conditional() and implementations of
pm_runtime_get_if_active() and pm_runtime_get_if_in_use() are moved to
runtime.c.
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com >
Reviewed-by: Alex Elder <elder@linaro.org >
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Acked-by: Takashi Iwai <tiwai@suse.de > # sound/
Reviewed-by: Jacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com > # drivers/accel/ivpu/
Acked-by: Rodrigo Vivi <rodrigo.vivi@intel.com > # drivers/gpu/drm/i915/
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com >
Acked-by: Bjorn Helgaas <bhelgaas@google.com > # drivers/pci/
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com >
2024-02-12 16:57:47 +01:00
Erick Archer
d2435a8e3d
drm/i915: Add flex arrays to struct i915_syncmap
...
The "struct i915_syncmap" uses a dynamically sized set of trailing
elements. It can use an "u32" array or a "struct i915_syncmap *"
array.
So, use the preferred way in the kernel declaring flexible arrays [1].
Because there are two possibilities for the trailing arrays, it is
necessary to declare a union and use the DECLARE_FLEX_ARRAY macro.
The comment can be removed as the union is now clear enough.
Also, avoid the open-coded arithmetic in the memory allocator functions
[2] using the "struct_size" macro.
Moreover, refactor the "__sync_seqno" and "__sync_child" functions due
to now it is possible to use the union members added to the structure.
This way, it is also possible to avoid the open-coded arithmetic in
pointers.
Link: https://www.kernel.org/doc/html/next/process/deprecated.html#zero-length-and-one-element-arrays [1]
Link: https://www.kernel.org/doc/html/next/process/deprecated.html#open-coded-arithmetic-in-allocator-arguments [2]
Signed-off-by: Erick Archer <erick.archer@gmx.com >
Reviewed-by: Kees Cook <keescook@chromium.org >
Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240208181318.4259-1-erick.archer@gmx.com
2024-02-12 11:59:37 +00:00
Ville Syrjälä
ad26d56d08
drm/i915/dp: Limit SST link rate to <=8.1Gbps
...
Limit the link rate to HBR3 or below (<=8.1Gbps) in SST mode.
UHBR (10Gbps+) link rates require 128b/132b channel encoding
which we have not yet hooked up into the SST/no-sideband codepaths.
Cc: stable@vger.kernel.org
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240208154552.14545-1-ville.syrjala@linux.intel.com
Reviewed-by: Jani Nikula <jani.nikula@intel.com >
(cherry picked from commit 6061811d72 )
Signed-off-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com >
2024-02-12 11:39:19 +02:00
Manasi Navare
962ac2dce5
drm/i915/dsc: Fix the macro that calculates DSCC_/DSCA_ PPS reg address
...
Commit bd077259d0 ("drm/i915/vdsc: Add function to read any PPS
register") defines a new macro to calculate the DSC PPS register
addresses with PPS number as an input. This macro correctly calculates
the addresses till PPS 11 since the addresses increment by 4. So in that
case the following macro works correctly to give correct register
address:
_MMIO(_DSCA_PPS_0 + (pps) * 4)
However after PPS 11, the register address for PPS 12 increments by 12
because of RC Buffer memory allocation in between. Because of this
discontinuity in the address space, the macro calculates wrong addresses
for PPS 12 - 16 resulting into incorrect DSC PPS parameter value
read/writes causing DSC corruption.
This fixes it by correcting this macro to add the offset of 12 for PPS
>=12.
v3: Add correct paranthesis for pps argument (Jani Nikula)
Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/10172
Fixes: bd077259d0 ("drm/i915/vdsc: Add function to read any PPS register")
Cc: Suraj Kandpal <suraj.kandpal@intel.com >
Cc: Ankit Nautiyal <ankit.k.nautiyal@intel.com >
Cc: Animesh Manna <animesh.manna@intel.com >
Cc: Jani Nikula <jani.nikula@linux.intel.com >
Cc: Sean Paul <sean@poorly.run >
Cc: Drew Davenport <ddavenport@chromium.org >
Signed-off-by: Manasi Navare <navaremanasi@chromium.org >
Reviewed-by: Jani Nikula <jani.nikula@intel.com >
Signed-off-by: Jani Nikula <jani.nikula@intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240205204619.1991673-1-navaremanasi@chromium.org
(cherry picked from commit 6074be620c )
Signed-off-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com >
2024-02-12 11:39:15 +02:00
Ville Syrjälä
cd1f0d3df2
drm/i915/dvo: Use sizeof(*variable) instead of sizeof(type)
...
Prefer sizeof(*variable) to sizeof(type) to make it a bit
harder to screw things up.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240208151720.7866-14-ville.syrjala@linux.intel.com
Reviewed-by: Jani Nikula <jani.nikula@intel.com >
2024-02-09 14:46:13 +02:00
Ville Syrjälä
8dc0e7dfc5
drm/i915/dvo/ns2501: Nuke pointless casts
...
The dvo 'dev_priv' is void* so no need for an explicit cast.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20240208151720.7866-13-ville.syrjala@linux.intel.com
Reviewed-by: Jani Nikula <jani.nikula@intel.com >
2024-02-09 14:46:06 +02:00