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.
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 | 32 ++++----
drivers/gpu/drm/i915/display/intel_fb.c | 1 +
.../drm/i915/display/skl_universal_plane.c | 1 +
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 | 9 ++-
drivers/gpu/drm/xe/display/xe_display_rpm.c | 63 ++++++++-------
drivers/gpu/drm/xe/display/xe_display_rpm.h | 11 +++
include/drm/intel/display_parent_interface.h | 45 +++++++++++
16 files changed, 224 insertions(+), 50 deletions(-)
create mode 100644 drivers/gpu/drm/xe/display/xe_display_rpm.h
create mode 100644 include/drm/intel/display_parent_interface.h
--
2.43.0