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 <[email protected]>
> Cc: Lucas De Marchi <[email protected]>
> Signed-off-by: Jani Nikula <[email protected]>
> ---
>  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 <[email protected]>


>  #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

Reply via email to