drm/i915: move display device and runtime info to struct intel_display
authorJani Nikula <jani.nikula@intel.com>
Tue, 27 Jun 2023 15:14:02 +0000 (18:14 +0300)
committerJani Nikula <jani.nikula@intel.com>
Thu, 29 Jun 2023 13:28:14 +0000 (16:28 +0300)
Continue moving all things display further into display files and
structures.

v2: Sort includes (Matt)

Cc: Matt Roper <matthew.d.roper@intel.com>
Cc: Lucas De Marchi <lucas.demarchi@intel.com>
Reviewed-by: Matt Roper <matthew.d.roper@intel.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/fc9ad69a0c7fa972380c654c3b80070ce2f4bf0f.1687878757.git.jani.nikula@intel.com
drivers/gpu/drm/i915/display/intel_display_core.h
drivers/gpu/drm/i915/i915_drv.h
drivers/gpu/drm/i915/intel_device_info.c
drivers/gpu/drm/i915/intel_device_info.h

index 8d2243c..c37d2c4 100644 (file)
@@ -17,6 +17,7 @@
 #include <drm/drm_modeset_lock.h>
 
 #include "intel_cdclk.h"
+#include "intel_display_device.h"
 #include "intel_display_limits.h"
 #include "intel_display_power.h"
 #include "intel_dpll_mgr.h"
@@ -430,6 +431,14 @@ struct intel_display {
        } hti;
 
        struct {
+               /* Access with DISPLAY_INFO() */
+               const struct intel_display_device_info *__device_info;
+
+               /* Access with DISPLAY_RUNTIME_INFO() */
+               struct intel_display_runtime_info __runtime_info;
+       } info;
+
+       struct {
                bool false_color;
        } ips;
 
index 078720a..8947d12 100644 (file)
@@ -205,7 +205,6 @@ struct drm_i915_private {
 
        const struct intel_device_info __info; /* Use INTEL_INFO() to access. */
        struct intel_runtime_info __runtime; /* Use RUNTIME_INFO() to access. */
-       struct intel_display_runtime_info __display_runtime; /* Access with DISPLAY_RUNTIME_INFO() */
        struct intel_driver_caps caps;
 
        struct i915_dsm dsm;
@@ -417,9 +416,9 @@ static inline struct intel_gt *to_gt(struct drm_i915_private *i915)
             (engine__) = rb_to_uabi_engine(rb_next(&(engine__)->uabi_node)))
 
 #define INTEL_INFO(i915)       (&(i915)->__info)
-#define DISPLAY_INFO(i915)     (INTEL_INFO(i915)->display)
 #define RUNTIME_INFO(i915)     (&(i915)->__runtime)
-#define DISPLAY_RUNTIME_INFO(i915)     (&(i915)->__display_runtime)
+#define DISPLAY_INFO(i915)     ((i915)->display.info.__device_info)
+#define DISPLAY_RUNTIME_INFO(i915)     (&(i915)->display.info.__runtime_info)
 #define DRIVER_CAPS(i915)      (&(i915)->caps)
 
 #define INTEL_DEVID(i915)      (RUNTIME_INFO(i915)->device_id)
index b93ef5f..0740922 100644 (file)
@@ -391,7 +391,6 @@ static const struct intel_display_device_info no_display = {};
  */
 void intel_device_info_runtime_init(struct drm_i915_private *dev_priv)
 {
-       struct intel_device_info *info = mkwrite_device_info(dev_priv);
        struct intel_runtime_info *runtime = RUNTIME_INFO(dev_priv);
 
        if (HAS_DISPLAY(dev_priv))
@@ -401,7 +400,7 @@ void intel_device_info_runtime_init(struct drm_i915_private *dev_priv)
        if (!HAS_DISPLAY(dev_priv)) {
                dev_priv->drm.driver_features &= ~(DRIVER_MODESET |
                                                   DRIVER_ATOMIC);
-               info->display = &no_display;
+               dev_priv->display.info.__device_info = &no_display;
        }
 
        /* Disable nuclear pageflip by default on pre-g4x */
@@ -444,8 +443,8 @@ void intel_device_info_driver_create(struct drm_i915_private *i915,
        memcpy(runtime, &INTEL_INFO(i915)->__runtime, sizeof(*runtime));
 
        /* Probe display support */
-       info->display = intel_display_device_probe(i915, info->has_gmd_id,
-                                                  &ver, &rel, &step);
+       i915->display.info.__device_info = intel_display_device_probe(i915, info->has_gmd_id,
+                                                                     &ver, &rel, &step);
        memcpy(DISPLAY_RUNTIME_INFO(i915),
               &DISPLAY_INFO(i915)->__runtime_defaults,
               sizeof(*DISPLAY_RUNTIME_INFO(i915)));
index 81bfd64..dbfe644 100644 (file)
@@ -29,8 +29,6 @@
 
 #include "intel_step.h"
 
-#include "display/intel_display_device.h"
-
 #include "gt/intel_engine_types.h"
 #include "gt/intel_context_types.h"
 #include "gt/intel_sseu.h"
@@ -240,8 +238,6 @@ struct intel_device_info {
        DEV_INFO_FOR_EACH_FLAG(DEFINE_FLAG);
 #undef DEFINE_FLAG
 
-       const struct intel_display_device_info *display;
-
        /*
         * Initial runtime info. Do not access outside of i915_driver_create().
         */