* [PATCH v2] drm/i915/tgl: Gen-12 display loses Yf tiling and legacy CCS support
@ 2019-08-27 8:45 Dhinakaran Pandiyan
2019-08-27 10:59 ` ✓ Fi.CI.BAT: success for " Patchwork
` (2 more replies)
0 siblings, 3 replies; 5+ messages in thread
From: Dhinakaran Pandiyan @ 2019-08-27 8:45 UTC (permalink / raw)
To: intel-gfx; +Cc: Lucas De Marchi, Dhinakaran Pandiyan
Yf tiling was removed in gen-12, so do not expose Yf modifiers to user
space. Gen-12 display also is incompatible with pre-gen12 Y-tiled
CCS, so do not expose I915_FORMAT_MOD_Y_TILED_CCS.
v2: Rebase to carry forward recently added gen11 formats.
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Cc: Stanislav Lisovskiy <stanislav.lisovskiy@intel.com>
Signed-off-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
---
drivers/gpu/drm/i915/display/intel_sprite.c | 86 +++++++++++++++++++--
1 file changed, 80 insertions(+), 6 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_sprite.c b/drivers/gpu/drm/i915/display/intel_sprite.c
index dea63be1964f..8ca2fbc2af1d 100644
--- a/drivers/gpu/drm/i915/display/intel_sprite.c
+++ b/drivers/gpu/drm/i915/display/intel_sprite.c
@@ -2157,6 +2157,13 @@ static const u64 skl_plane_format_modifiers_ccs[] = {
DRM_FORMAT_MOD_INVALID
};
+static const u64 gen12_plane_format_modifiers_noccs[] = {
+ I915_FORMAT_MOD_Y_TILED,
+ I915_FORMAT_MOD_X_TILED,
+ DRM_FORMAT_MOD_LINEAR,
+ DRM_FORMAT_MOD_INVALID
+};
+
static bool g4x_sprite_format_mod_supported(struct drm_plane *_plane,
u32 format, u64 modifier)
{
@@ -2305,6 +2312,55 @@ static bool skl_plane_format_mod_supported(struct drm_plane *_plane,
}
}
+static bool gen12_plane_format_mod_supported(struct drm_plane *_plane,
+ u32 format, u64 modifier)
+{
+ switch (modifier) {
+ case DRM_FORMAT_MOD_LINEAR:
+ case I915_FORMAT_MOD_X_TILED:
+ case I915_FORMAT_MOD_Y_TILED:
+ break;
+ default:
+ return false;
+ }
+
+ switch (format) {
+ case DRM_FORMAT_XRGB8888:
+ case DRM_FORMAT_XBGR8888:
+ case DRM_FORMAT_ARGB8888:
+ case DRM_FORMAT_ABGR8888:
+ case DRM_FORMAT_RGB565:
+ case DRM_FORMAT_XRGB2101010:
+ case DRM_FORMAT_XBGR2101010:
+ case DRM_FORMAT_YUYV:
+ case DRM_FORMAT_YVYU:
+ case DRM_FORMAT_UYVY:
+ case DRM_FORMAT_VYUY:
+ case DRM_FORMAT_NV12:
+ case DRM_FORMAT_P010:
+ case DRM_FORMAT_P012:
+ case DRM_FORMAT_P016:
+ case DRM_FORMAT_XVYU2101010:
+ case DRM_FORMAT_C8:
+ case DRM_FORMAT_XBGR16161616F:
+ case DRM_FORMAT_ABGR16161616F:
+ case DRM_FORMAT_XRGB16161616F:
+ case DRM_FORMAT_ARGB16161616F:
+ case DRM_FORMAT_Y210:
+ case DRM_FORMAT_Y212:
+ case DRM_FORMAT_Y216:
+ case DRM_FORMAT_XVYU12_16161616:
+ case DRM_FORMAT_XVYU16161616:
+ if (modifier == DRM_FORMAT_MOD_LINEAR ||
+ modifier == I915_FORMAT_MOD_X_TILED ||
+ modifier == I915_FORMAT_MOD_Y_TILED)
+ return true;
+ /* fall through */
+ default:
+ return false;
+ }
+}
+
static const struct drm_plane_funcs g4x_sprite_funcs = {
.update_plane = drm_atomic_helper_update_plane,
.disable_plane = drm_atomic_helper_disable_plane,
@@ -2341,6 +2397,15 @@ static const struct drm_plane_funcs skl_plane_funcs = {
.format_mod_supported = skl_plane_format_mod_supported,
};
+static const struct drm_plane_funcs gen12_plane_funcs = {
+ .update_plane = drm_atomic_helper_update_plane,
+ .disable_plane = drm_atomic_helper_disable_plane,
+ .destroy = intel_plane_destroy,
+ .atomic_duplicate_state = intel_plane_duplicate_state,
+ .atomic_destroy_state = intel_plane_destroy_state,
+ .format_mod_supported = gen12_plane_format_mod_supported,
+};
+
static bool skl_plane_has_fbc(struct drm_i915_private *dev_priv,
enum pipe pipe, enum plane_id plane_id)
{
@@ -2429,6 +2494,7 @@ struct intel_plane *
skl_universal_plane_create(struct drm_i915_private *dev_priv,
enum pipe pipe, enum plane_id plane_id)
{
+ static const struct drm_plane_funcs *plane_funcs;
struct intel_plane *plane;
enum drm_plane_type plane_type;
unsigned int supported_rotations;
@@ -2471,11 +2537,19 @@ skl_universal_plane_create(struct drm_i915_private *dev_priv,
formats = skl_get_plane_formats(dev_priv, pipe,
plane_id, &num_formats);
- plane->has_ccs = skl_plane_has_ccs(dev_priv, pipe, plane_id);
- if (plane->has_ccs)
- modifiers = skl_plane_format_modifiers_ccs;
- else
- modifiers = skl_plane_format_modifiers_noccs;
+ if (INTEL_GEN(dev_priv) >= 12) {
+ /* TODO: Implement support for gen-12 CCS modifiers */
+ plane->has_ccs = false;
+ modifiers = gen12_plane_format_modifiers_noccs;
+ plane_funcs = &gen12_plane_funcs;
+ } else {
+ plane->has_ccs = skl_plane_has_ccs(dev_priv, pipe, plane_id);
+ if (plane->has_ccs)
+ modifiers = skl_plane_format_modifiers_ccs;
+ else
+ modifiers = skl_plane_format_modifiers_noccs;
+ plane_funcs = &skl_plane_funcs;
+ }
if (plane_id == PLANE_PRIMARY)
plane_type = DRM_PLANE_TYPE_PRIMARY;
@@ -2485,7 +2559,7 @@ skl_universal_plane_create(struct drm_i915_private *dev_priv,
possible_crtcs = BIT(pipe);
ret = drm_universal_plane_init(&dev_priv->drm, &plane->base,
- possible_crtcs, &skl_plane_funcs,
+ possible_crtcs, plane_funcs,
formats, num_formats, modifiers,
plane_type,
"plane %d%c", plane_id + 1,
--
2.17.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 5+ messages in thread* ✓ Fi.CI.BAT: success for drm/i915/tgl: Gen-12 display loses Yf tiling and legacy CCS support 2019-08-27 8:45 [PATCH v2] drm/i915/tgl: Gen-12 display loses Yf tiling and legacy CCS support Dhinakaran Pandiyan @ 2019-08-27 10:59 ` Patchwork 2019-08-28 9:22 ` ✓ Fi.CI.IGT: " Patchwork 2019-08-28 16:25 ` [PATCH v2] " Ville Syrjälä 2 siblings, 0 replies; 5+ messages in thread From: Patchwork @ 2019-08-27 10:59 UTC (permalink / raw) To: Dhinakaran Pandiyan; +Cc: intel-gfx == Series Details == Series: drm/i915/tgl: Gen-12 display loses Yf tiling and legacy CCS support URL : https://patchwork.freedesktop.org/series/65858/ State : success == Summary == CI Bug Log - changes from CI_DRM_6790 -> Patchwork_14196 ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/ Known issues ------------ Here are the changes found in Patchwork_14196 that come from known issues: ### IGT changes ### #### Possible fixes #### * igt@i915_selftest@live_gtt: - fi-glk-dsi: [INCOMPLETE][1] ([fdo#103359] / [k.org#198133]) -> [PASS][2] [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/fi-glk-dsi/igt@i915_selftest@live_gtt.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/fi-glk-dsi/igt@i915_selftest@live_gtt.html [fdo#103359]: https://bugs.freedesktop.org/show_bug.cgi?id=103359 [k.org#198133]: https://bugzilla.kernel.org/show_bug.cgi?id=198133 Participating hosts (49 -> 42) ------------------------------ Additional (1): fi-kbl-7500u Missing (8): fi-kbl-soraka fi-cml-u2 fi-ilk-m540 fi-byt-squawks fi-bsw-cyan fi-icl-y fi-byt-clapper fi-bdw-samus Build changes ------------- * CI: CI-20190529 -> None * Linux: CI_DRM_6790 -> Patchwork_14196 CI-20190529: 20190529 CI_DRM_6790: be6f240038f2ed178452504af00b0e940045542e @ git://anongit.freedesktop.org/gfx-ci/linux IGT_5150: a4e8217bcdfef9bb523f26a9084bbf615a6e8abb @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools Patchwork_14196: 5d004c02a7cca1ff75591913da6fac493afa96f3 @ git://anongit.freedesktop.org/gfx-ci/linux == Linux commits == 5d004c02a7cc drm/i915/tgl: Gen-12 display loses Yf tiling and legacy CCS support == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/ _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 5+ messages in thread
* ✓ Fi.CI.IGT: success for drm/i915/tgl: Gen-12 display loses Yf tiling and legacy CCS support 2019-08-27 8:45 [PATCH v2] drm/i915/tgl: Gen-12 display loses Yf tiling and legacy CCS support Dhinakaran Pandiyan 2019-08-27 10:59 ` ✓ Fi.CI.BAT: success for " Patchwork @ 2019-08-28 9:22 ` Patchwork 2019-08-28 16:25 ` [PATCH v2] " Ville Syrjälä 2 siblings, 0 replies; 5+ messages in thread From: Patchwork @ 2019-08-28 9:22 UTC (permalink / raw) To: Dhinakaran Pandiyan; +Cc: intel-gfx == Series Details == Series: drm/i915/tgl: Gen-12 display loses Yf tiling and legacy CCS support URL : https://patchwork.freedesktop.org/series/65858/ State : success == Summary == CI Bug Log - changes from CI_DRM_6790_full -> Patchwork_14196_full ==================================================== Summary ------- **SUCCESS** No regressions found. Known issues ------------ Here are the changes found in Patchwork_14196_full that come from known issues: ### IGT changes ### #### Issues hit #### * igt@gem_exec_parallel@bcs0-contexts: - shard-hsw: [PASS][1] -> [FAIL][2] ([fdo#111469]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/shard-hsw8/igt@gem_exec_parallel@bcs0-contexts.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/shard-hsw6/igt@gem_exec_parallel@bcs0-contexts.html * igt@gem_exec_schedule@reorder-wide-bsd: - shard-iclb: [PASS][3] -> [SKIP][4] ([fdo#111325]) +7 similar issues [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/shard-iclb7/igt@gem_exec_schedule@reorder-wide-bsd.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/shard-iclb1/igt@gem_exec_schedule@reorder-wide-bsd.html * igt@gem_workarounds@suspend-resume-context: - shard-apl: [PASS][5] -> [DMESG-WARN][6] ([fdo#108566]) +3 similar issues [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/shard-apl3/igt@gem_workarounds@suspend-resume-context.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/shard-apl7/igt@gem_workarounds@suspend-resume-context.html * igt@kms_flip@flip-vs-expired-vblank: - shard-glk: [PASS][7] -> [FAIL][8] ([fdo#105363]) [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/shard-glk5/igt@kms_flip@flip-vs-expired-vblank.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/shard-glk2/igt@kms_flip@flip-vs-expired-vblank.html * igt@kms_flip@flip-vs-modeset-vs-hang: - shard-apl: [PASS][9] -> [INCOMPLETE][10] ([fdo#103927]) +1 similar issue [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/shard-apl4/igt@kms_flip@flip-vs-modeset-vs-hang.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/shard-apl8/igt@kms_flip@flip-vs-modeset-vs-hang.html * igt@kms_flip@flip-vs-suspend-interruptible: - shard-skl: [PASS][11] -> [INCOMPLETE][12] ([fdo#109507]) [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/shard-skl1/igt@kms_flip@flip-vs-suspend-interruptible.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/shard-skl3/igt@kms_flip@flip-vs-suspend-interruptible.html * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-render: - shard-iclb: [PASS][13] -> [FAIL][14] ([fdo#103167]) +3 similar issues [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/shard-iclb2/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-render.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/shard-iclb8/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-render.html * igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-mmap-gtt: - shard-skl: [PASS][15] -> [FAIL][16] ([fdo#103167]) [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/shard-skl7/igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-mmap-gtt.html [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/shard-skl10/igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-mmap-gtt.html * igt@kms_plane_alpha_blend@pipe-c-coverage-7efc: - shard-skl: [PASS][17] -> [FAIL][18] ([fdo#108145] / [fdo#110403]) [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/shard-skl8/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/shard-skl1/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html * igt@kms_plane_lowres@pipe-a-tiling-y: - shard-iclb: [PASS][19] -> [FAIL][20] ([fdo#103166]) [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/shard-iclb5/igt@kms_plane_lowres@pipe-a-tiling-y.html [20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/shard-iclb6/igt@kms_plane_lowres@pipe-a-tiling-y.html * igt@kms_psr@psr2_sprite_plane_move: - shard-iclb: [PASS][21] -> [SKIP][22] ([fdo#109441]) +4 similar issues [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/shard-iclb2/igt@kms_psr@psr2_sprite_plane_move.html [22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/shard-iclb8/igt@kms_psr@psr2_sprite_plane_move.html * igt@prime_vgem@fence-wait-bsd2: - shard-iclb: [PASS][23] -> [SKIP][24] ([fdo#109276]) +16 similar issues [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/shard-iclb2/igt@prime_vgem@fence-wait-bsd2.html [24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/shard-iclb8/igt@prime_vgem@fence-wait-bsd2.html #### Possible fixes #### * igt@gem_ctx_shared@exec-single-timeline-bsd: - shard-iclb: [SKIP][25] ([fdo#110841]) -> [PASS][26] [25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/shard-iclb1/igt@gem_ctx_shared@exec-single-timeline-bsd.html [26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/shard-iclb6/igt@gem_ctx_shared@exec-single-timeline-bsd.html * igt@gem_exec_schedule@preempt-other-chain-bsd: - shard-iclb: [SKIP][27] ([fdo#111325]) -> [PASS][28] +5 similar issues [27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/shard-iclb2/igt@gem_exec_schedule@preempt-other-chain-bsd.html [28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/shard-iclb5/igt@gem_exec_schedule@preempt-other-chain-bsd.html * igt@gem_exec_schedule@preempt-queue-bsd2: - shard-iclb: [SKIP][29] ([fdo#109276]) -> [PASS][30] +12 similar issues [29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/shard-iclb7/igt@gem_exec_schedule@preempt-queue-bsd2.html [30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/shard-iclb1/igt@gem_exec_schedule@preempt-queue-bsd2.html * igt@kms_color@pipe-b-ctm-blue-to-red: - shard-skl: [FAIL][31] ([fdo#107201]) -> [PASS][32] [31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/shard-skl5/igt@kms_color@pipe-b-ctm-blue-to-red.html [32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/shard-skl1/igt@kms_color@pipe-b-ctm-blue-to-red.html * igt@kms_cursor_crc@pipe-c-cursor-suspend: - shard-hsw: [INCOMPLETE][33] ([fdo#103540]) -> [PASS][34] [33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/shard-hsw5/igt@kms_cursor_crc@pipe-c-cursor-suspend.html [34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/shard-hsw1/igt@kms_cursor_crc@pipe-c-cursor-suspend.html * igt@kms_cursor_legacy@2x-long-flip-vs-cursor-atomic: - shard-glk: [FAIL][35] ([fdo#104873]) -> [PASS][36] [35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/shard-glk9/igt@kms_cursor_legacy@2x-long-flip-vs-cursor-atomic.html [36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/shard-glk6/igt@kms_cursor_legacy@2x-long-flip-vs-cursor-atomic.html * igt@kms_flip@flip-vs-expired-vblank-interruptible: - shard-skl: [FAIL][37] ([fdo#105363]) -> [PASS][38] [37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/shard-skl9/igt@kms_flip@flip-vs-expired-vblank-interruptible.html [38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/shard-skl7/igt@kms_flip@flip-vs-expired-vblank-interruptible.html * igt@kms_frontbuffer_tracking@fbc-suspend: - shard-apl: [DMESG-WARN][39] ([fdo#108566]) -> [PASS][40] +5 similar issues [39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/shard-apl2/igt@kms_frontbuffer_tracking@fbc-suspend.html [40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/shard-apl8/igt@kms_frontbuffer_tracking@fbc-suspend.html * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-mmap-wc: - shard-skl: [FAIL][41] ([fdo#103167]) -> [PASS][42] +2 similar issues [41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/shard-skl10/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-mmap-wc.html [42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/shard-skl1/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-mmap-wc.html * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-indfb-draw-pwrite: - shard-iclb: [FAIL][43] ([fdo#103167]) -> [PASS][44] +5 similar issues [43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/shard-iclb5/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-indfb-draw-pwrite.html [44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/shard-iclb6/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-indfb-draw-pwrite.html * igt@kms_plane_alpha_blend@pipe-b-constant-alpha-min: - shard-skl: [FAIL][45] ([fdo#108145]) -> [PASS][46] [45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/shard-skl5/igt@kms_plane_alpha_blend@pipe-b-constant-alpha-min.html [46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/shard-skl1/igt@kms_plane_alpha_blend@pipe-b-constant-alpha-min.html * igt@kms_psr@psr2_cursor_render: - shard-iclb: [SKIP][47] ([fdo#109441]) -> [PASS][48] +4 similar issues [47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/shard-iclb1/igt@kms_psr@psr2_cursor_render.html [48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/shard-iclb2/igt@kms_psr@psr2_cursor_render.html * igt@kms_vblank@pipe-b-wait-idle-hang: - shard-apl: [INCOMPLETE][49] ([fdo#103927]) -> [PASS][50] +4 similar issues [49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/shard-apl3/igt@kms_vblank@pipe-b-wait-idle-hang.html [50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/shard-apl3/igt@kms_vblank@pipe-b-wait-idle-hang.html * igt@perf@polling: - shard-skl: [FAIL][51] ([fdo#110728]) -> [PASS][52] [51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/shard-skl8/igt@perf@polling.html [52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/shard-skl6/igt@perf@polling.html #### Warnings #### * igt@gem_ctx_isolation@vcs1-nonpriv: - shard-iclb: [SKIP][53] ([fdo#109276]) -> [FAIL][54] ([fdo#111329]) [53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/shard-iclb3/igt@gem_ctx_isolation@vcs1-nonpriv.html [54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/shard-iclb1/igt@gem_ctx_isolation@vcs1-nonpriv.html * igt@gem_mocs_settings@mocs-isolation-bsd2: - shard-iclb: [FAIL][55] ([fdo#111330]) -> [SKIP][56] ([fdo#109276]) [55]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/shard-iclb2/igt@gem_mocs_settings@mocs-isolation-bsd2.html [56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/shard-iclb5/igt@gem_mocs_settings@mocs-isolation-bsd2.html * igt@gem_mocs_settings@mocs-reset-bsd2: - shard-iclb: [SKIP][57] ([fdo#109276]) -> [FAIL][58] ([fdo#111330]) [57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/shard-iclb3/igt@gem_mocs_settings@mocs-reset-bsd2.html [58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/shard-iclb4/igt@gem_mocs_settings@mocs-reset-bsd2.html * igt@i915_pm_rc6_residency@media-rc6-accuracy: - shard-apl: [INCOMPLETE][59] ([fdo#103927]) -> [SKIP][60] ([fdo#109271]) [59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6790/shard-apl2/igt@i915_pm_rc6_residency@media-rc6-accuracy.html [60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/shard-apl7/igt@i915_pm_rc6_residency@media-rc6-accuracy.html [fdo#103166]: https://bugs.freedesktop.org/show_bug.cgi?id=103166 [fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167 [fdo#103540]: https://bugs.freedesktop.org/show_bug.cgi?id=103540 [fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927 [fdo#104873]: https://bugs.freedesktop.org/show_bug.cgi?id=104873 [fdo#105363]: https://bugs.freedesktop.org/show_bug.cgi?id=105363 [fdo#107201]: https://bugs.freedesktop.org/show_bug.cgi?id=107201 [fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145 [fdo#108566]: https://bugs.freedesktop.org/show_bug.cgi?id=108566 [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271 [fdo#109276]: https://bugs.freedesktop.org/show_bug.cgi?id=109276 [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441 [fdo#109507]: https://bugs.freedesktop.org/show_bug.cgi?id=109507 [fdo#110403]: https://bugs.freedesktop.org/show_bug.cgi?id=110403 [fdo#110728]: https://bugs.freedesktop.org/show_bug.cgi?id=110728 [fdo#110841]: https://bugs.freedesktop.org/show_bug.cgi?id=110841 [fdo#111325]: https://bugs.freedesktop.org/show_bug.cgi?id=111325 [fdo#111329]: https://bugs.freedesktop.org/show_bug.cgi?id=111329 [fdo#111330]: https://bugs.freedesktop.org/show_bug.cgi?id=111330 [fdo#111469]: https://bugs.freedesktop.org/show_bug.cgi?id=111469 Participating hosts (10 -> 10) ------------------------------ No changes in participating hosts Build changes ------------- * CI: CI-20190529 -> None * Linux: CI_DRM_6790 -> Patchwork_14196 CI-20190529: 20190529 CI_DRM_6790: be6f240038f2ed178452504af00b0e940045542e @ git://anongit.freedesktop.org/gfx-ci/linux IGT_5150: a4e8217bcdfef9bb523f26a9084bbf615a6e8abb @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools Patchwork_14196: 5d004c02a7cca1ff75591913da6fac493afa96f3 @ git://anongit.freedesktop.org/gfx-ci/linux piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14196/ _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v2] drm/i915/tgl: Gen-12 display loses Yf tiling and legacy CCS support 2019-08-27 8:45 [PATCH v2] drm/i915/tgl: Gen-12 display loses Yf tiling and legacy CCS support Dhinakaran Pandiyan 2019-08-27 10:59 ` ✓ Fi.CI.BAT: success for " Patchwork 2019-08-28 9:22 ` ✓ Fi.CI.IGT: " Patchwork @ 2019-08-28 16:25 ` Ville Syrjälä 2019-08-29 18:02 ` Dhinakaran Pandiyan 2 siblings, 1 reply; 5+ messages in thread From: Ville Syrjälä @ 2019-08-28 16:25 UTC (permalink / raw) To: Dhinakaran Pandiyan; +Cc: intel-gfx, Lucas De Marchi On Tue, Aug 27, 2019 at 01:45:16AM -0700, Dhinakaran Pandiyan wrote: > Yf tiling was removed in gen-12, so do not expose Yf modifiers to user > space. Gen-12 display also is incompatible with pre-gen12 Y-tiled > CCS, so do not expose I915_FORMAT_MOD_Y_TILED_CCS. > > v2: Rebase to carry forward recently added gen11 formats. > > Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> > Cc: Stanislav Lisovskiy <stanislav.lisovskiy@intel.com> > Signed-off-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> > Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > --- > drivers/gpu/drm/i915/display/intel_sprite.c | 86 +++++++++++++++++++-- > 1 file changed, 80 insertions(+), 6 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_sprite.c b/drivers/gpu/drm/i915/display/intel_sprite.c > index dea63be1964f..8ca2fbc2af1d 100644 > --- a/drivers/gpu/drm/i915/display/intel_sprite.c > +++ b/drivers/gpu/drm/i915/display/intel_sprite.c > @@ -2157,6 +2157,13 @@ static const u64 skl_plane_format_modifiers_ccs[] = { > DRM_FORMAT_MOD_INVALID > }; > > +static const u64 gen12_plane_format_modifiers_noccs[] = { > + I915_FORMAT_MOD_Y_TILED, > + I915_FORMAT_MOD_X_TILED, > + DRM_FORMAT_MOD_LINEAR, > + DRM_FORMAT_MOD_INVALID > +}; > + > static bool g4x_sprite_format_mod_supported(struct drm_plane *_plane, > u32 format, u64 modifier) > { > @@ -2305,6 +2312,55 @@ static bool skl_plane_format_mod_supported(struct drm_plane *_plane, > } > } > > +static bool gen12_plane_format_mod_supported(struct drm_plane *_plane, > + u32 format, u64 modifier) > +{ > + switch (modifier) { > + case DRM_FORMAT_MOD_LINEAR: > + case I915_FORMAT_MOD_X_TILED: > + case I915_FORMAT_MOD_Y_TILED: > + break; > + default: > + return false; > + } > + > + switch (format) { > + case DRM_FORMAT_XRGB8888: > + case DRM_FORMAT_XBGR8888: > + case DRM_FORMAT_ARGB8888: > + case DRM_FORMAT_ABGR8888: > + case DRM_FORMAT_RGB565: > + case DRM_FORMAT_XRGB2101010: > + case DRM_FORMAT_XBGR2101010: > + case DRM_FORMAT_YUYV: > + case DRM_FORMAT_YVYU: > + case DRM_FORMAT_UYVY: > + case DRM_FORMAT_VYUY: > + case DRM_FORMAT_NV12: > + case DRM_FORMAT_P010: > + case DRM_FORMAT_P012: > + case DRM_FORMAT_P016: > + case DRM_FORMAT_XVYU2101010: > + case DRM_FORMAT_C8: > + case DRM_FORMAT_XBGR16161616F: > + case DRM_FORMAT_ABGR16161616F: > + case DRM_FORMAT_XRGB16161616F: > + case DRM_FORMAT_ARGB16161616F: > + case DRM_FORMAT_Y210: > + case DRM_FORMAT_Y212: > + case DRM_FORMAT_Y216: > + case DRM_FORMAT_XVYU12_16161616: > + case DRM_FORMAT_XVYU16161616: > + if (modifier == DRM_FORMAT_MOD_LINEAR || > + modifier == I915_FORMAT_MOD_X_TILED || > + modifier == I915_FORMAT_MOD_Y_TILED) > + return true; > + /* fall through */ > + default: > + return false; > + } > +} > + > static const struct drm_plane_funcs g4x_sprite_funcs = { > .update_plane = drm_atomic_helper_update_plane, > .disable_plane = drm_atomic_helper_disable_plane, > @@ -2341,6 +2397,15 @@ static const struct drm_plane_funcs skl_plane_funcs = { > .format_mod_supported = skl_plane_format_mod_supported, > }; > > +static const struct drm_plane_funcs gen12_plane_funcs = { > + .update_plane = drm_atomic_helper_update_plane, > + .disable_plane = drm_atomic_helper_disable_plane, > + .destroy = intel_plane_destroy, > + .atomic_duplicate_state = intel_plane_duplicate_state, > + .atomic_destroy_state = intel_plane_destroy_state, > + .format_mod_supported = gen12_plane_format_mod_supported, > +}; > + > static bool skl_plane_has_fbc(struct drm_i915_private *dev_priv, > enum pipe pipe, enum plane_id plane_id) > { > @@ -2429,6 +2494,7 @@ struct intel_plane * > skl_universal_plane_create(struct drm_i915_private *dev_priv, > enum pipe pipe, enum plane_id plane_id) > { > + static const struct drm_plane_funcs *plane_funcs; > struct intel_plane *plane; > enum drm_plane_type plane_type; > unsigned int supported_rotations; > @@ -2471,11 +2537,19 @@ skl_universal_plane_create(struct drm_i915_private *dev_priv, > formats = skl_get_plane_formats(dev_priv, pipe, > plane_id, &num_formats); > > - plane->has_ccs = skl_plane_has_ccs(dev_priv, pipe, plane_id); > - if (plane->has_ccs) > - modifiers = skl_plane_format_modifiers_ccs; > - else > - modifiers = skl_plane_format_modifiers_noccs; > + if (INTEL_GEN(dev_priv) >= 12) { > + /* TODO: Implement support for gen-12 CCS modifiers */ > + plane->has_ccs = false; > + modifiers = gen12_plane_format_modifiers_noccs; > + plane_funcs = &gen12_plane_funcs; > + } else { > + plane->has_ccs = skl_plane_has_ccs(dev_priv, pipe, plane_id); > + if (plane->has_ccs) > + modifiers = skl_plane_format_modifiers_ccs; > + else > + modifiers = skl_plane_format_modifiers_noccs; > + plane_funcs = &skl_plane_funcs; > + } > > if (plane_id == PLANE_PRIMARY) > plane_type = DRM_PLANE_TYPE_PRIMARY; > @@ -2485,7 +2559,7 @@ skl_universal_plane_create(struct drm_i915_private *dev_priv, > possible_crtcs = BIT(pipe); > > ret = drm_universal_plane_init(&dev_priv->drm, &plane->base, > - possible_crtcs, &skl_plane_funcs, > + possible_crtcs, plane_funcs, > formats, num_formats, modifiers, > plane_type, > "plane %d%c", plane_id + 1, > -- > 2.17.1 -- Ville Syrjälä Intel _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v2] drm/i915/tgl: Gen-12 display loses Yf tiling and legacy CCS support 2019-08-28 16:25 ` [PATCH v2] " Ville Syrjälä @ 2019-08-29 18:02 ` Dhinakaran Pandiyan 0 siblings, 0 replies; 5+ messages in thread From: Dhinakaran Pandiyan @ 2019-08-29 18:02 UTC (permalink / raw) To: Ville Syrjälä; +Cc: intel-gfx, Lucas De Marchi On Wed, 2019-08-28 at 19:25 +0300, Ville Syrjälä wrote: > On Tue, Aug 27, 2019 at 01:45:16AM -0700, Dhinakaran Pandiyan wrote: > > Yf tiling was removed in gen-12, so do not expose Yf modifiers to user > > space. Gen-12 display also is incompatible with pre-gen12 Y-tiled > > CCS, so do not expose I915_FORMAT_MOD_Y_TILED_CCS. > > > > v2: Rebase to carry forward recently added gen11 formats. > > > > Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> > > Cc: Stanislav Lisovskiy <stanislav.lisovskiy@intel.com> > > Signed-off-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> > > Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com> > > Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Thanks for reviewing this patch again, I'll rebase and send the render decompression patches next. Lucas, Thanks for pushing the patch, I was attempting learn dim again :) -DK > > > --- > > drivers/gpu/drm/i915/display/intel_sprite.c | 86 +++++++++++++++++++-- > > 1 file changed, 80 insertions(+), 6 deletions(-) > > > > diff --git a/drivers/gpu/drm/i915/display/intel_sprite.c > > b/drivers/gpu/drm/i915/display/intel_sprite.c > > index dea63be1964f..8ca2fbc2af1d 100644 > > --- a/drivers/gpu/drm/i915/display/intel_sprite.c > > +++ b/drivers/gpu/drm/i915/display/intel_sprite.c > > @@ -2157,6 +2157,13 @@ static const u64 skl_plane_format_modifiers_ccs[] = { > > DRM_FORMAT_MOD_INVALID > > }; > > > > +static const u64 gen12_plane_format_modifiers_noccs[] = { > > + I915_FORMAT_MOD_Y_TILED, > > + I915_FORMAT_MOD_X_TILED, > > + DRM_FORMAT_MOD_LINEAR, > > + DRM_FORMAT_MOD_INVALID > > +}; > > + > > static bool g4x_sprite_format_mod_supported(struct drm_plane *_plane, > > u32 format, u64 modifier) > > { > > @@ -2305,6 +2312,55 @@ static bool skl_plane_format_mod_supported(struct drm_plane *_plane, > > } > > } > > > > +static bool gen12_plane_format_mod_supported(struct drm_plane *_plane, > > + u32 format, u64 modifier) > > +{ > > + switch (modifier) { > > + case DRM_FORMAT_MOD_LINEAR: > > + case I915_FORMAT_MOD_X_TILED: > > + case I915_FORMAT_MOD_Y_TILED: > > + break; > > + default: > > + return false; > > + } > > + > > + switch (format) { > > + case DRM_FORMAT_XRGB8888: > > + case DRM_FORMAT_XBGR8888: > > + case DRM_FORMAT_ARGB8888: > > + case DRM_FORMAT_ABGR8888: > > + case DRM_FORMAT_RGB565: > > + case DRM_FORMAT_XRGB2101010: > > + case DRM_FORMAT_XBGR2101010: > > + case DRM_FORMAT_YUYV: > > + case DRM_FORMAT_YVYU: > > + case DRM_FORMAT_UYVY: > > + case DRM_FORMAT_VYUY: > > + case DRM_FORMAT_NV12: > > + case DRM_FORMAT_P010: > > + case DRM_FORMAT_P012: > > + case DRM_FORMAT_P016: > > + case DRM_FORMAT_XVYU2101010: > > + case DRM_FORMAT_C8: > > + case DRM_FORMAT_XBGR16161616F: > > + case DRM_FORMAT_ABGR16161616F: > > + case DRM_FORMAT_XRGB16161616F: > > + case DRM_FORMAT_ARGB16161616F: > > + case DRM_FORMAT_Y210: > > + case DRM_FORMAT_Y212: > > + case DRM_FORMAT_Y216: > > + case DRM_FORMAT_XVYU12_16161616: > > + case DRM_FORMAT_XVYU16161616: > > + if (modifier == DRM_FORMAT_MOD_LINEAR || > > + modifier == I915_FORMAT_MOD_X_TILED || > > + modifier == I915_FORMAT_MOD_Y_TILED) > > + return true; > > + /* fall through */ > > + default: > > + return false; > > + } > > +} > > + > > static const struct drm_plane_funcs g4x_sprite_funcs = { > > .update_plane = drm_atomic_helper_update_plane, > > .disable_plane = drm_atomic_helper_disable_plane, > > @@ -2341,6 +2397,15 @@ static const struct drm_plane_funcs skl_plane_funcs = { > > .format_mod_supported = skl_plane_format_mod_supported, > > }; > > > > +static const struct drm_plane_funcs gen12_plane_funcs = { > > + .update_plane = drm_atomic_helper_update_plane, > > + .disable_plane = drm_atomic_helper_disable_plane, > > + .destroy = intel_plane_destroy, > > + .atomic_duplicate_state = intel_plane_duplicate_state, > > + .atomic_destroy_state = intel_plane_destroy_state, > > + .format_mod_supported = gen12_plane_format_mod_supported, > > +}; > > + > > static bool skl_plane_has_fbc(struct drm_i915_private *dev_priv, > > enum pipe pipe, enum plane_id plane_id) > > { > > @@ -2429,6 +2494,7 @@ struct intel_plane * > > skl_universal_plane_create(struct drm_i915_private *dev_priv, > > enum pipe pipe, enum plane_id plane_id) > > { > > + static const struct drm_plane_funcs *plane_funcs; > > struct intel_plane *plane; > > enum drm_plane_type plane_type; > > unsigned int supported_rotations; > > @@ -2471,11 +2537,19 @@ skl_universal_plane_create(struct drm_i915_private *dev_priv, > > formats = skl_get_plane_formats(dev_priv, pipe, > > plane_id, &num_formats); > > > > - plane->has_ccs = skl_plane_has_ccs(dev_priv, pipe, plane_id); > > - if (plane->has_ccs) > > - modifiers = skl_plane_format_modifiers_ccs; > > - else > > - modifiers = skl_plane_format_modifiers_noccs; > > + if (INTEL_GEN(dev_priv) >= 12) { > > + /* TODO: Implement support for gen-12 CCS modifiers */ > > + plane->has_ccs = false; > > + modifiers = gen12_plane_format_modifiers_noccs; > > + plane_funcs = &gen12_plane_funcs; > > + } else { > > + plane->has_ccs = skl_plane_has_ccs(dev_priv, pipe, plane_id); > > + if (plane->has_ccs) > > + modifiers = skl_plane_format_modifiers_ccs; > > + else > > + modifiers = skl_plane_format_modifiers_noccs; > > + plane_funcs = &skl_plane_funcs; > > + } > > > > if (plane_id == PLANE_PRIMARY) > > plane_type = DRM_PLANE_TYPE_PRIMARY; > > @@ -2485,7 +2559,7 @@ skl_universal_plane_create(struct drm_i915_private *dev_priv, > > possible_crtcs = BIT(pipe); > > > > ret = drm_universal_plane_init(&dev_priv->drm, &plane->base, > > - possible_crtcs, &skl_plane_funcs, > > + possible_crtcs, plane_funcs, > > formats, num_formats, modifiers, > > plane_type, > > "plane %d%c", plane_id + 1, > > -- > > 2.17.1 > > _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2019-08-29 18:02 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2019-08-27 8:45 [PATCH v2] drm/i915/tgl: Gen-12 display loses Yf tiling and legacy CCS support Dhinakaran Pandiyan 2019-08-27 10:59 ` ✓ Fi.CI.BAT: success for " Patchwork 2019-08-28 9:22 ` ✓ Fi.CI.IGT: " Patchwork 2019-08-28 16:25 ` [PATCH v2] " Ville Syrjälä 2019-08-29 18:02 ` Dhinakaran Pandiyan
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.