drm/i915/intel_fb: Pull FB plane functions from intel_display_types.h
authorImre Deak <imre.deak@intel.com>
Thu, 25 Mar 2021 21:47:49 +0000 (23:47 +0200)
committerImre Deak <imre.deak@intel.com>
Mon, 29 Mar 2021 19:54:50 +0000 (22:54 +0300)
Start collecting all the FB plane related functions into a new intel_fb.c
file.

v2: Drop display/ part of header includes. (Ville)

Signed-off-by: Imre Deak <imre.deak@intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20210325214808.2071517-7-imre.deak@intel.com
drivers/gpu/drm/i915/Makefile
drivers/gpu/drm/i915/display/intel_display.c
drivers/gpu/drm/i915/display/intel_display_types.h
drivers/gpu/drm/i915/display/intel_fb.c [new file with mode: 0644]
drivers/gpu/drm/i915/display/intel_fb.h [new file with mode: 0644]
drivers/gpu/drm/i915/display/skl_universal_plane.c

index aaa051b..9faf2d1 100644 (file)
@@ -210,6 +210,7 @@ i915-y += \
        display/intel_dpll.o \
        display/intel_dpll_mgr.o \
        display/intel_dsb.o \
+       display/intel_fb.o \
        display/intel_fbc.o \
        display/intel_fdi.o \
        display/intel_fifo_underrun.o \
index d77b01f..331dbd7 100644 (file)
@@ -54,6 +54,7 @@
 #include "display/intel_dpll_mgr.h"
 #include "display/intel_dsi.h"
 #include "display/intel_dvo.h"
+#include "display/intel_fb.h"
 #include "display/intel_gmbus.h"
 #include "display/intel_hdmi.h"
 #include "display/intel_lvds.h"
index 946e030..80983cf 100644 (file)
@@ -1995,14 +1995,6 @@ static inline bool is_ccs_modifier(u64 modifier)
               modifier == I915_FORMAT_MOD_Yf_TILED_CCS;
 }
 
-static inline bool is_ccs_plane(const struct drm_framebuffer *fb, int plane)
-{
-       if (!is_ccs_modifier(fb->modifier))
-               return false;
-
-       return plane >= fb->format->num_planes / 2;
-}
-
 static inline bool is_gen12_ccs_modifier(u64 modifier)
 {
        return modifier == I915_FORMAT_MOD_Y_TILED_GEN12_RC_CCS ||
@@ -2010,15 +2002,4 @@ static inline bool is_gen12_ccs_modifier(u64 modifier)
               modifier == I915_FORMAT_MOD_Y_TILED_GEN12_MC_CCS;
 }
 
-static inline bool is_gen12_ccs_plane(const struct drm_framebuffer *fb, int plane)
-{
-       return is_gen12_ccs_modifier(fb->modifier) && is_ccs_plane(fb, plane);
-}
-
-static inline bool is_gen12_ccs_cc_plane(const struct drm_framebuffer *fb, int plane)
-{
-       return fb->modifier == I915_FORMAT_MOD_Y_TILED_GEN12_RC_CCS_CC &&
-              plane == 2;
-}
-
 #endif /*  __INTEL_DISPLAY_TYPES_H__ */
diff --git a/drivers/gpu/drm/i915/display/intel_fb.c b/drivers/gpu/drm/i915/display/intel_fb.c
new file mode 100644 (file)
index 0000000..ff90947
--- /dev/null
@@ -0,0 +1,28 @@
+// SPDX-License-Identifier: MIT
+/*
+ * Copyright © 2021 Intel Corporation
+ */
+
+#include <drm/drm_framebuffer.h>
+
+#include "intel_display_types.h"
+#include "intel_fb.h"
+
+bool is_ccs_plane(const struct drm_framebuffer *fb, int plane)
+{
+       if (!is_ccs_modifier(fb->modifier))
+               return false;
+
+       return plane >= fb->format->num_planes / 2;
+}
+
+bool is_gen12_ccs_plane(const struct drm_framebuffer *fb, int plane)
+{
+       return is_gen12_ccs_modifier(fb->modifier) && is_ccs_plane(fb, plane);
+}
+
+bool is_gen12_ccs_cc_plane(const struct drm_framebuffer *fb, int plane)
+{
+       return fb->modifier == I915_FORMAT_MOD_Y_TILED_GEN12_RC_CCS_CC &&
+              plane == 2;
+}
diff --git a/drivers/gpu/drm/i915/display/intel_fb.h b/drivers/gpu/drm/i915/display/intel_fb.h
new file mode 100644 (file)
index 0000000..64e6a25
--- /dev/null
@@ -0,0 +1,17 @@
+/* SPDX-License-Identifier: MIT */
+/*
+ * Copyright © 2020-2021 Intel Corporation
+ */
+
+#ifndef __INTEL_FB_H__
+#define __INTEL_FB_H__
+
+#include <linux/types.h>
+
+struct drm_framebuffer;
+
+bool is_ccs_plane(const struct drm_framebuffer *fb, int plane);
+bool is_gen12_ccs_plane(const struct drm_framebuffer *fb, int plane);
+bool is_gen12_ccs_cc_plane(const struct drm_framebuffer *fb, int plane);
+
+#endif /* __INTEL_FB_H__ */
index 245c102..1eb7641 100644 (file)
@@ -11,6 +11,7 @@
 #include "i915_drv.h"
 #include "intel_atomic_plane.h"
 #include "intel_display_types.h"
+#include "intel_fb.h"
 #include "intel_pm.h"
 #include "intel_psr.h"
 #include "intel_sprite.h"