drm/i915: move memory_regions to runtime info
authorJani Nikula <jani.nikula@intel.com>
Fri, 19 Aug 2022 12:02:42 +0000 (15:02 +0300)
committerJani Nikula <jani.nikula@intel.com>
Wed, 24 Aug 2022 08:45:26 +0000 (11:45 +0300)
If it's modified runtime, it's runtime info.

mock_gem_device() is the only one that modifies it. If that could be
fixed, we wouldn't have to do this.

Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Reviewed-by: Maarten Lankhort <maarten.lankhorst@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/12aace656c6a6380575767d7f6ccd73c12a627c3.1660910433.git.jani.nikula@intel.com
drivers/gpu/drm/i915/i915_drv.h
drivers/gpu/drm/i915/i915_pci.c
drivers/gpu/drm/i915/intel_device_info.c
drivers/gpu/drm/i915/intel_device_info.h
drivers/gpu/drm/i915/selftests/mock_gem_device.c

index ea2b549c9458d78b07036f57110619eda068240e..036d7425514888df28c07c0581b29443709d4db4 100644 (file)
@@ -1302,7 +1302,7 @@ IS_SUBPLATFORM(const struct drm_i915_private *i915,
 
 #define HAS_IPC(dev_priv)               (INTEL_INFO(dev_priv)->display.has_ipc)
 
-#define HAS_REGION(i915, i) (INTEL_INFO(i915)->memory_regions & (i))
+#define HAS_REGION(i915, i) (RUNTIME_INFO(i915)->memory_regions & (i))
 #define HAS_LMEM(i915) HAS_REGION(i915, REGION_LMEM)
 
 /*
index af34a3848c437a75ac396401d2ca907b250f0966..c3b4fb00351fd4730b9b880193a6e684501dc8a1 100644 (file)
        .__runtime.page_sizes = I915_GTT_PAGE_SIZE_4K
 
 #define GEN_DEFAULT_REGIONS \
-       .memory_regions = REGION_SMEM | REGION_STOLEN_SMEM
+       .__runtime.memory_regions = REGION_SMEM | REGION_STOLEN_SMEM
 
 #define I830_FEATURES \
        GEN(2), \
@@ -909,7 +909,7 @@ static const struct intel_device_info rkl_info = {
 };
 
 #define DGFX_FEATURES \
-       .memory_regions = REGION_SMEM | REGION_LMEM | REGION_STOLEN_LMEM, \
+       .__runtime.memory_regions = REGION_SMEM | REGION_LMEM | REGION_STOLEN_LMEM, \
        .has_llc = 0, \
        .has_pxp = 0, \
        .has_snoop = 1, \
@@ -1129,7 +1129,7 @@ static const struct intel_device_info mtl_info = {
        .display.has_modular_fia = 1,
        .has_flat_ccs = 0,
        .has_snoop = 1,
-       .memory_regions = REGION_SMEM | REGION_STOLEN_LMEM,
+       .__runtime.memory_regions = REGION_SMEM | REGION_STOLEN_LMEM,
        .platform_engine_mask = BIT(RCS0) | BIT(BCS0) | BIT(CCS0),
        .require_force_probe = 1,
 };
index 21a6ccd7c4075fc478ee540ba13b4bf04abcf12f..bb16b0ec4ed2151ca8462ba0abf153787f3573bf 100644 (file)
@@ -109,7 +109,7 @@ void intel_device_info_print(const struct intel_device_info *info,
                drm_printf(p, "display version: %u\n", info->display.ver);
 
        drm_printf(p, "gt: %d\n", info->gt);
-       drm_printf(p, "memory-regions: %x\n", info->memory_regions);
+       drm_printf(p, "memory-regions: %x\n", runtime->memory_regions);
        drm_printf(p, "page-sizes: %x\n", runtime->page_sizes);
        drm_printf(p, "platform: %s\n", intel_platform_name(info->platform));
        drm_printf(p, "ppgtt-size: %d\n", runtime->ppgtt_size);
index c5b63691d5ef5b6732ef81bc52f00338e23dfbc7..2e50774ed6ab0acdf397cc5f123b0f2f008b9ccd 100644 (file)
@@ -225,6 +225,8 @@ struct intel_runtime_info {
        enum intel_ppgtt_type ppgtt_type;
        unsigned int ppgtt_size; /* log2, e.g. 31/32/48 bits */
 
+       u32 memory_regions; /* regions supported by the HW */
+
        bool has_pooled_eu;
 
        /* display */
@@ -245,8 +247,6 @@ struct intel_device_info {
 
        unsigned int dma_mask_size; /* available DMA address bits */
 
-       u32 memory_regions; /* regions supported by the HW */
-
        u8 gt; /* GT number, 0 if undefined */
 
 #define DEFINE_FLAG(name) u8 name:1
index b23f11d24b97844aea02825a6043562a8e5a8645..2fc3472c414b7423cb5063f32b98fb1548230e00 100644 (file)
@@ -179,7 +179,7 @@ struct drm_i915_private *mock_gem_device(void)
                I915_GTT_PAGE_SIZE_64K |
                I915_GTT_PAGE_SIZE_2M;
 
-       mkwrite_device_info(i915)->memory_regions = REGION_SMEM;
+       RUNTIME_INFO(i915)->memory_regions = REGION_SMEM;
        intel_memory_regions_hw_probe(i915);
 
        spin_lock_init(&i915->gpu_error.lock);