mbox series

[v3,0/7] drm/i915: better high level abstraction for display

Message ID cover.1712665176.git.jani.nikula@intel.com (mailing list archive)
Headers show
Series drm/i915: better high level abstraction for display | expand

Message

Jani Nikula April 9, 2024, 12:26 p.m. UTC
v3 of [1], and no longer an RFC.

This is just initial plumbing, and not much in terms of usage (apart
from patch 7). We could start converting a number of places already, but
the main blocker atm is that I haven't figured out a decent solution for
the various IS_<PLATFORM>() check macros.

I'm intentionally keeping the patches small and independent, because
they could conceivably be backported to stable as dependencies, so we
don't cause a huge problem for backports.

Anyway, we could start moving things forward with this.


BR,
Jani.


[1] https://lore.kernel.org/r/cover.1709727127.git.jani.nikula@intel.com


Jani Nikula (7):
  drm/i915/display: add intel_display -> drm_device backpointer
  drm/i915/display: add generic to_intel_display() macro
  drm/i915: add generic __to_intel_display()
  drm/xe/display: add generic __to_intel_display()
  drm/i915/display: accept either i915 or display for feature tests
  drm/i915/de: allow intel_display and drm_i915_private for de functions
  drm/i915/quirks: convert struct drm_i915_private to struct
    intel_display

 .../gpu/drm/i915/display/intel_backlight.c    |  40 +++----
 drivers/gpu/drm/i915/display/intel_ddi.c      |   6 +-
 drivers/gpu/drm/i915/display/intel_de.h       | 102 +++++++++++-------
 .../gpu/drm/i915/display/intel_display_core.h |   3 +
 .../drm/i915/display/intel_display_device.c   |   3 +
 .../drm/i915/display/intel_display_device.h   |   4 +-
 .../drm/i915/display/intel_display_driver.c   |   3 +-
 .../drm/i915/display/intel_display_types.h    |  37 +++++++
 drivers/gpu/drm/i915/display/intel_panel.c    |  10 +-
 drivers/gpu/drm/i915/display/intel_pps.c      |   6 +-
 drivers/gpu/drm/i915/display/intel_quirks.c   |  56 +++++-----
 drivers/gpu/drm/i915/display/intel_quirks.h   |   6 +-
 drivers/gpu/drm/i915/i915_drv.h               |  11 ++
 .../gpu/drm/xe/compat-i915-headers/i915_drv.h |  11 ++
 drivers/gpu/drm/xe/display/xe_hdcp_gsc.c      |   1 +
 15 files changed, 197 insertions(+), 102 deletions(-)

Comments

Rodrigo Vivi April 16, 2024, 4:24 p.m. UTC | #1
On Tue, Apr 09, 2024 at 03:26:42PM +0300, Jani Nikula wrote:
> v3 of [1], and no longer an RFC.
> 
> This is just initial plumbing, and not much in terms of usage (apart
> from patch 7). We could start converting a number of places already, but
> the main blocker atm is that I haven't figured out a decent solution for
> the various IS_<PLATFORM>() check macros.

what about convert them all to DISPLAY_VER?

or perhaps with a legacy way for that like:
s/IS_<PLATFORM>/IS_DISPLAY_PLATFORM

where
#define IS_DISPLAY_PLATFORM DISPLAY_VER(something...)

btw I just noticed we need to convert DISPLAY_VER towards
display rather then device pointer quickly as well.

> 
> I'm intentionally keeping the patches small and independent, because
> they could conceivably be backported to stable as dependencies, so we
> don't cause a huge problem for backports.
> 
> Anyway, we could start moving things forward with this.
> 
> 
> BR,
> Jani.
> 
> 
> [1] https://lore.kernel.org/r/cover.1709727127.git.jani.nikula@intel.com
> 
> 
> Jani Nikula (7):
>   drm/i915/display: add intel_display -> drm_device backpointer
>   drm/i915/display: add generic to_intel_display() macro
>   drm/i915: add generic __to_intel_display()
>   drm/xe/display: add generic __to_intel_display()
>   drm/i915/display: accept either i915 or display for feature tests
>   drm/i915/de: allow intel_display and drm_i915_private for de functions
>   drm/i915/quirks: convert struct drm_i915_private to struct
>     intel_display
> 
>  .../gpu/drm/i915/display/intel_backlight.c    |  40 +++----
>  drivers/gpu/drm/i915/display/intel_ddi.c      |   6 +-
>  drivers/gpu/drm/i915/display/intel_de.h       | 102 +++++++++++-------
>  .../gpu/drm/i915/display/intel_display_core.h |   3 +
>  .../drm/i915/display/intel_display_device.c   |   3 +
>  .../drm/i915/display/intel_display_device.h   |   4 +-
>  .../drm/i915/display/intel_display_driver.c   |   3 +-
>  .../drm/i915/display/intel_display_types.h    |  37 +++++++
>  drivers/gpu/drm/i915/display/intel_panel.c    |  10 +-
>  drivers/gpu/drm/i915/display/intel_pps.c      |   6 +-
>  drivers/gpu/drm/i915/display/intel_quirks.c   |  56 +++++-----
>  drivers/gpu/drm/i915/display/intel_quirks.h   |   6 +-
>  drivers/gpu/drm/i915/i915_drv.h               |  11 ++
>  .../gpu/drm/xe/compat-i915-headers/i915_drv.h |  11 ++
>  drivers/gpu/drm/xe/display/xe_hdcp_gsc.c      |   1 +
>  15 files changed, 197 insertions(+), 102 deletions(-)
> 
> -- 
> 2.39.2
>