On Thu, Jun 08, 2023 at 06:09:04PM +0300, Jani Nikula wrote: > Continue moving all things display further into display files and > structures. > > Cc: Matt Roper <matthew.d.roper@xxxxxxxxx> > Cc: Lucas De Marchi <lucas.demarchi@xxxxxxxxx> > Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx> > --- > drivers/gpu/drm/i915/display/intel_display_core.h | 9 +++++++++ > drivers/gpu/drm/i915/i915_drv.h | 5 ++--- > drivers/gpu/drm/i915/intel_device_info.c | 7 +++---- > drivers/gpu/drm/i915/intel_device_info.h | 4 ---- > 4 files changed, 14 insertions(+), 11 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_display_core.h b/drivers/gpu/drm/i915/display/intel_display_core.h > index 8d2243c71dd8..a65ed8a52ce4 100644 > --- a/drivers/gpu/drm/i915/display/intel_display_core.h > +++ b/drivers/gpu/drm/i915/display/intel_display_core.h > @@ -19,6 +19,7 @@ > #include "intel_cdclk.h" > #include "intel_display_limits.h" > #include "intel_display_power.h" > +#include "intel_display_device.h" Minor nitpick: the includes aren't sorted here. Otherwise, Acked-by: Matt Roper <matthew.d.roper@xxxxxxxxx> > #include "intel_dpll_mgr.h" > #include "intel_fbc.h" > #include "intel_global_state.h" > @@ -429,6 +430,14 @@ struct intel_display { > u32 state; > } 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; > diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h > index b457a37e67c4..2d8331d435f1 100644 > --- a/drivers/gpu/drm/i915/i915_drv.h > +++ b/drivers/gpu/drm/i915/i915_drv.h > @@ -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; > @@ -407,9 +406,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) > diff --git a/drivers/gpu/drm/i915/intel_device_info.c b/drivers/gpu/drm/i915/intel_device_info.c > index 53d316804071..d51bbdbe53ab 100644 > --- a/drivers/gpu/drm/i915/intel_device_info.c > +++ b/drivers/gpu/drm/i915/intel_device_info.c > @@ -387,7 +387,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)) > @@ -397,7 +396,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 */ > @@ -440,8 +439,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))); > diff --git a/drivers/gpu/drm/i915/intel_device_info.h b/drivers/gpu/drm/i915/intel_device_info.h > index 069291b3bd37..c8b4bee5e592 100644 > --- a/drivers/gpu/drm/i915/intel_device_info.h > +++ b/drivers/gpu/drm/i915/intel_device_info.h > @@ -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" > @@ -241,8 +239,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(). > */ > -- > 2.39.2 > -- Matt Roper Graphics Software Engineer Linux GPU Platform Enablement Intel Corporation