On Thu, 30 Oct 2025, Jouni Högander <[email protected]> wrote:
> Add struct intel_display_parent_interface which is supposed to contain
> function pointers passed at display probe. This is supposed to allow
> differing implementations between i915 and xe drivers.
>
> Add runtime pm as an example and first set of functions using this new
> mechanism. Pass own implementations of runtime from i915 and xe
> drivers during probe.
Good stuff, let's merge? We've got two sets of eyes on patch 1, that's
enough.
BR,
Jani.
>
> v3:
> - useless includes removed
> - drop xe_display_rpm_{get, put}_raw
> v2:
> - unrelated include removal dropped
> - add _interface suffix to rpm function pointer struct
> - add struct ref_tracker forward declaration
> - use kernel-doc comments as needed
> - move i915 display rpm interface implementation to intel_runtime_pm.c
> - rename intel_display as i915_display
> - move xe_display_rpm_interface code into xe_display_rpm.c
> - rename xe_rpm as xe_display_rpm
> - use <> when including drm/intel/display_parent_interface.h
> - drop checks for validity of rpm function pointers
> - keep xe_display_rpm.c
>
> Jani Nikula (1):
> drm/{i915,xe}/display: pass parent interface to display probe
>
> Jouni Högander (5):
> drm/{i915,xe}/display: Add display runtime pm parent interface
> drm/i915/display: Runtime pm wrappers for display parent interface
> drm/xe/display: Runtime pm wrappers for display parent interface
> drm/i915/display: Use display parent interface for i915 runtime pm
> drm/xe/display: Use display parent interface for xe runtime pm
>
> .../gpu/drm/i915/display/intel_display_core.h | 4 +
> .../drm/i915/display/intel_display_device.c | 5 +-
> .../drm/i915/display/intel_display_device.h | 4 +-
> .../gpu/drm/i915/display/intel_display_rpm.c | 33 ++++----
> drivers/gpu/drm/i915/i915_driver.c | 12 ++-
> drivers/gpu/drm/i915/i915_driver.h | 2 +
> drivers/gpu/drm/i915/intel_runtime_pm.c | 77 +++++++++++++++++++
> drivers/gpu/drm/i915/intel_runtime_pm.h | 3 +
> .../gpu/drm/i915/selftests/mock_gem_device.c | 4 +-
> drivers/gpu/drm/xe/Makefile | 1 +
> drivers/gpu/drm/xe/display/xe_display.c | 8 +-
> drivers/gpu/drm/xe/display/xe_display_rpm.c | 61 +++++++--------
> drivers/gpu/drm/xe/display/xe_display_rpm.h | 11 +++
> include/drm/intel/display_parent_interface.h | 45 +++++++++++
> 14 files changed, 215 insertions(+), 55 deletions(-)
> create mode 100644 drivers/gpu/drm/xe/display/xe_display_rpm.h
> create mode 100644 include/drm/intel/display_parent_interface.h
--
Jani Nikula, Intel