]> www.infradead.org Git - users/hch/misc.git/commitdiff
drm/i915/dram: add intel_mem_freq()
authorJani Nikula <jani.nikula@intel.com>
Mon, 18 Aug 2025 10:07:25 +0000 (13:07 +0300)
committerJani Nikula <jani.nikula@intel.com>
Tue, 19 Aug 2025 08:20:40 +0000 (11:20 +0300)
Add a more generic intel_mem_freq() function instead of platform
specific ones. Expose it for future use outside of intel_dram.c.

Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Link: https://lore.kernel.org/r/602103b290a92ba26d581eeb595ba5e707eb5bc4.1755511595.git.jani.nikula@intel.com
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
drivers/gpu/drm/i915/soc/intel_dram.c
drivers/gpu/drm/i915/soc/intel_dram.h

index 366891cda6b9af2964d3ab149287f12d0710ba33..02b8fa7845257e5d44f6ff5faddd4cd2c2a8bd76 100644 (file)
@@ -136,16 +136,23 @@ static unsigned int vlv_mem_freq(struct drm_i915_private *i915)
        return 0;
 }
 
-static void detect_mem_freq(struct drm_i915_private *i915)
+unsigned int intel_mem_freq(struct drm_i915_private *i915)
 {
        if (IS_PINEVIEW(i915))
-               i915->mem_freq = pnv_mem_freq(i915);
+               return pnv_mem_freq(i915);
        else if (GRAPHICS_VER(i915) == 5)
-               i915->mem_freq = ilk_mem_freq(i915);
+               return ilk_mem_freq(i915);
        else if (IS_CHERRYVIEW(i915))
-               i915->mem_freq = chv_mem_freq(i915);
+               return chv_mem_freq(i915);
        else if (IS_VALLEYVIEW(i915))
-               i915->mem_freq = vlv_mem_freq(i915);
+               return vlv_mem_freq(i915);
+       else
+               return 0;
+}
+
+static void detect_mem_freq(struct drm_i915_private *i915)
+{
+       i915->mem_freq = intel_mem_freq(i915);
 
        if (IS_PINEVIEW(i915))
                i915->is_ddr3 = pnv_is_ddr3(i915);
index 09a7a581d9492dea6cbb84ea7535cde3b55a2b85..5ba75e279e8424e9d1f9fd38600fbcc1a286a20e 100644 (file)
@@ -34,6 +34,7 @@ struct dram_info {
 void intel_dram_edram_detect(struct drm_i915_private *i915);
 int intel_dram_detect(struct drm_i915_private *i915);
 unsigned int intel_fsb_freq(struct drm_i915_private *i915);
+unsigned int intel_mem_freq(struct drm_i915_private *i915);
 const struct dram_info *intel_dram_info(struct drm_device *drm);
 
 #endif /* __INTEL_DRAM_H__ */