* [CI v3 1/2] drm/i915: Add function to check for linear surfaces
@ 2018-10-26 19:38 Dhinakaran Pandiyan
2018-10-26 19:38 ` [CI v3 2/2] drm/i915: Do not program aux plane offsets on gen11+ Dhinakaran Pandiyan
` (3 more replies)
0 siblings, 4 replies; 5+ messages in thread
From: Dhinakaran Pandiyan @ 2018-10-26 19:38 UTC (permalink / raw)
To: intel-gfx; +Cc: Dhinakaran Pandiyan
A framebuffer can comprise surfaces with distinct tiling formats,
making checks against modifier alone insufficient. Make use of a
function to identify a linear surface based on both modifier and color
plane.
v2: Typo fix
v3: remove 'inline' from function definition (Ville)
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
drivers/gpu/drm/i915/intel_display.c | 12 ++++++++----
1 file changed, 8 insertions(+), 4 deletions(-)
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index fe045abb6472..84a0c077a0bc 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -2205,6 +2205,11 @@ static u32 intel_adjust_tile_offset(int *x, int *y,
return new_offset;
}
+static bool is_surface_linear(u64 modifier, int color_plane)
+{
+ return modifier == DRM_FORMAT_MOD_LINEAR;
+}
+
static u32 intel_adjust_aligned_offset(int *x, int *y,
const struct drm_framebuffer *fb,
int color_plane,
@@ -2217,7 +2222,7 @@ static u32 intel_adjust_aligned_offset(int *x, int *y,
WARN_ON(new_offset > old_offset);
- if (fb->modifier != DRM_FORMAT_MOD_LINEAR) {
+ if (!is_surface_linear(fb->modifier, color_plane)) {
unsigned int tile_size, tile_width, tile_height;
unsigned int pitch_tiles;
@@ -2281,14 +2286,13 @@ static u32 intel_compute_aligned_offset(struct drm_i915_private *dev_priv,
unsigned int rotation,
u32 alignment)
{
- uint64_t fb_modifier = fb->modifier;
unsigned int cpp = fb->format->cpp[color_plane];
u32 offset, offset_aligned;
if (alignment)
alignment--;
- if (fb_modifier != DRM_FORMAT_MOD_LINEAR) {
+ if (!is_surface_linear(fb->modifier, color_plane)) {
unsigned int tile_size, tile_width, tile_height;
unsigned int tile_rows, tiles, pitch_tiles;
@@ -2525,7 +2529,7 @@ intel_fill_fb_info(struct drm_i915_private *dev_priv,
tile_size);
offset /= tile_size;
- if (fb->modifier != DRM_FORMAT_MOD_LINEAR) {
+ if (!is_surface_linear(fb->modifier, i)) {
unsigned int tile_width, tile_height;
unsigned int pitch_tiles;
struct drm_rect r;
--
2.14.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
* [CI v3 2/2] drm/i915: Do not program aux plane offsets on gen11+
2018-10-26 19:38 [CI v3 1/2] drm/i915: Add function to check for linear surfaces Dhinakaran Pandiyan
@ 2018-10-26 19:38 ` Dhinakaran Pandiyan
2018-10-26 20:12 ` ✓ Fi.CI.BAT: success for series starting with [CI,v3,1/2] drm/i915: Add function to check for linear surfaces Patchwork
` (2 subsequent siblings)
3 siblings, 0 replies; 5+ messages in thread
From: Dhinakaran Pandiyan @ 2018-10-26 19:38 UTC (permalink / raw)
To: intel-gfx; +Cc: Dhinakaran Pandiyan
The PLANE_AUX_OFFSET mmio does not exist on ICL, do not program it. We'll
still calculate the aux offset as it is required for adjusing x-y offsets.
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Signed-off-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
drivers/gpu/drm/i915/intel_sprite.c | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/drivers/gpu/drm/i915/intel_sprite.c b/drivers/gpu/drm/i915/intel_sprite.c
index cfaddc05fea6..a27d6f67c7c5 100644
--- a/drivers/gpu/drm/i915/intel_sprite.c
+++ b/drivers/gpu/drm/i915/intel_sprite.c
@@ -414,9 +414,11 @@ skl_program_plane(struct intel_plane *plane,
I915_WRITE_FW(PLANE_SIZE(pipe, plane_id), (src_h << 16) | src_w);
I915_WRITE_FW(PLANE_AUX_DIST(pipe, plane_id),
(plane_state->color_plane[1].offset - surf_addr) | aux_stride);
- I915_WRITE_FW(PLANE_AUX_OFFSET(pipe, plane_id),
- (plane_state->color_plane[1].y << 16) |
- plane_state->color_plane[1].x);
+
+ if (INTEL_GEN(dev_priv) < 11)
+ I915_WRITE_FW(PLANE_AUX_OFFSET(pipe, plane_id),
+ (plane_state->color_plane[1].y << 16) |
+ plane_state->color_plane[1].x);
if (icl_is_hdr_plane(plane)) {
u32 cus_ctl = 0;
--
2.14.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 series starting with [CI,v3,1/2] drm/i915: Add function to check for linear surfaces
2018-10-26 19:38 [CI v3 1/2] drm/i915: Add function to check for linear surfaces Dhinakaran Pandiyan
2018-10-26 19:38 ` [CI v3 2/2] drm/i915: Do not program aux plane offsets on gen11+ Dhinakaran Pandiyan
@ 2018-10-26 20:12 ` Patchwork
2018-10-27 5:21 ` ✓ Fi.CI.IGT: " Patchwork
2018-10-29 19:51 ` [CI v3 1/2] " Dhinakaran Pandiyan
3 siblings, 0 replies; 5+ messages in thread
From: Patchwork @ 2018-10-26 20:12 UTC (permalink / raw)
To: Dhinakaran Pandiyan; +Cc: intel-gfx
== Series Details ==
Series: series starting with [CI,v3,1/2] drm/i915: Add function to check for linear surfaces
URL : https://patchwork.freedesktop.org/series/51620/
State : success
== Summary ==
= CI Bug Log - changes from CI_DRM_5044 -> Patchwork_10611 =
== Summary - SUCCESS ==
No regressions found.
External URL: https://patchwork.freedesktop.org/api/1.0/series/51620/revisions/1/mbox/
== Known issues ==
Here are the changes found in Patchwork_10611 that come from known issues:
=== IGT changes ===
==== Issues hit ====
igt@kms_flip@basic-flip-vs-wf_vblank:
fi-glk-j4005: PASS -> FAIL (fdo#100368)
igt@kms_pipe_crc_basic@read-crc-pipe-b:
fi-byt-clapper: PASS -> FAIL (fdo#107362)
igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a:
fi-byt-clapper: PASS -> FAIL (fdo#103191, fdo#107362)
igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b:
fi-icl-u: PASS -> INCOMPLETE (fdo#107713)
fi-blb-e6850: NOTRUN -> INCOMPLETE (fdo#107718)
==== Possible fixes ====
igt@gem_exec_suspend@basic-s3:
fi-blb-e6850: INCOMPLETE (fdo#107718) -> PASS
igt@gem_sync@basic-each:
fi-glk-j4005: DMESG-WARN (fdo#105719) -> PASS
igt@kms_flip@basic-flip-vs-modeset:
fi-glk-j4005: DMESG-WARN (fdo#106000) -> PASS
igt@kms_pipe_crc_basic@read-crc-pipe-b-frame-sequence:
fi-byt-clapper: FAIL (fdo#103191, fdo#107362) -> PASS
igt@kms_pipe_crc_basic@read-crc-pipe-c-frame-sequence:
fi-glk-j4005: DMESG-FAIL (fdo#106000) -> PASS
fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
fdo#103191 https://bugs.freedesktop.org/show_bug.cgi?id=103191
fdo#105719 https://bugs.freedesktop.org/show_bug.cgi?id=105719
fdo#106000 https://bugs.freedesktop.org/show_bug.cgi?id=106000
fdo#107362 https://bugs.freedesktop.org/show_bug.cgi?id=107362
fdo#107713 https://bugs.freedesktop.org/show_bug.cgi?id=107713
fdo#107718 https://bugs.freedesktop.org/show_bug.cgi?id=107718
== Participating hosts (47 -> 44) ==
Additional (1): fi-gdg-551
Missing (4): fi-ctg-p8600 fi-ilk-m540 fi-bsw-cyan fi-hsw-4200u
== Build changes ==
* Linux: CI_DRM_5044 -> Patchwork_10611
CI_DRM_5044: c4487dca27970879bf67f331614142c749984d65 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_4698: af57164fcb16950187ad402ed31f565e88c42a78 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_10611: a67d83114567ab312bf49354690c6da07542e708 @ git://anongit.freedesktop.org/gfx-ci/linux
== Linux commits ==
a67d83114567 drm/i915: Do not program aux plane offsets on gen11+
4e332de234a1 drm/i915: Add function to check for linear surfaces
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_10611/issues.html
_______________________________________________
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 series starting with [CI,v3,1/2] drm/i915: Add function to check for linear surfaces
2018-10-26 19:38 [CI v3 1/2] drm/i915: Add function to check for linear surfaces Dhinakaran Pandiyan
2018-10-26 19:38 ` [CI v3 2/2] drm/i915: Do not program aux plane offsets on gen11+ Dhinakaran Pandiyan
2018-10-26 20:12 ` ✓ Fi.CI.BAT: success for series starting with [CI,v3,1/2] drm/i915: Add function to check for linear surfaces Patchwork
@ 2018-10-27 5:21 ` Patchwork
2018-10-29 19:51 ` [CI v3 1/2] " Dhinakaran Pandiyan
3 siblings, 0 replies; 5+ messages in thread
From: Patchwork @ 2018-10-27 5:21 UTC (permalink / raw)
To: Dhinakaran Pandiyan; +Cc: intel-gfx
== Series Details ==
Series: series starting with [CI,v3,1/2] drm/i915: Add function to check for linear surfaces
URL : https://patchwork.freedesktop.org/series/51620/
State : success
== Summary ==
= CI Bug Log - changes from CI_DRM_5044_full -> Patchwork_10611_full =
== Summary - WARNING ==
Minor unknown changes coming with Patchwork_10611_full need to be verified
manually.
If you think the reported changes have nothing to do with the changes
introduced in Patchwork_10611_full, please notify your bug team to allow them
to document this new failure mode, which will reduce false positives in CI.
== Possible new issues ==
Here are the unknown changes that may have been introduced in Patchwork_10611_full:
=== IGT changes ===
==== Warnings ====
igt@pm_rc6_residency@rc6-accuracy:
shard-snb: SKIP -> PASS
== Known issues ==
Here are the changes found in Patchwork_10611_full that come from known issues:
=== IGT changes ===
==== Issues hit ====
igt@gem_cpu_reloc@full:
shard-skl: NOTRUN -> INCOMPLETE (fdo#108073)
igt@gem_ctx_isolation@bcs0-s3:
shard-kbl: PASS -> INCOMPLETE (fdo#103665)
igt@gem_exec_reloc@basic-gtt:
shard-snb: NOTRUN -> INCOMPLETE (fdo#105411)
igt@gem_exec_schedule@pi-ringfull-blt:
shard-skl: NOTRUN -> FAIL (fdo#103158) +1
igt@gem_userptr_blits@readonly-unsync:
shard-skl: NOTRUN -> INCOMPLETE (fdo#108074)
igt@kms_atomic_interruptible@legacy-dpms:
shard-apl: PASS -> DMESG-WARN (fdo#108549) +10
igt@kms_busy@extended-pageflip-modeset-hang-oldfb-render-b:
shard-skl: NOTRUN -> DMESG-WARN (fdo#107956)
igt@kms_cursor_crc@cursor-64x21-offscreen:
shard-skl: NOTRUN -> FAIL (fdo#103232)
igt@kms_cursor_crc@cursor-size-change:
shard-apl: PASS -> FAIL (fdo#103232)
igt@kms_flip@2x-flip-vs-expired-vblank:
shard-glk: PASS -> FAIL (fdo#105363) +1
igt@kms_flip@flip-vs-expired-vblank-interruptible:
shard-glk: PASS -> FAIL (fdo#102887, fdo#105363)
igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-fullscreen:
shard-apl: PASS -> FAIL (fdo#103167) +1
igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-pwrite:
shard-glk: PASS -> FAIL (fdo#103167) +1
igt@kms_plane@pixel-format-pipe-c-planes:
shard-kbl: NOTRUN -> FAIL (fdo#103166)
igt@kms_plane@plane-position-covered-pipe-c-planes:
shard-apl: PASS -> FAIL (fdo#103166)
igt@kms_plane_alpha_blend@pipe-a-alpha-7efc:
shard-skl: NOTRUN -> FAIL (fdo#107815, fdo#108145) +2
igt@kms_plane_alpha_blend@pipe-c-alpha-transparant-fb:
shard-skl: NOTRUN -> FAIL (fdo#108145) +3
igt@kms_plane_lowres@pipe-a-tiling-y:
shard-kbl: PASS -> DMESG-WARN (fdo#105345)
igt@kms_plane_multiple@atomic-pipe-c-tiling-x:
shard-glk: PASS -> FAIL (fdo#103166) +1
igt@kms_plane_multiple@atomic-pipe-c-tiling-y:
shard-skl: NOTRUN -> FAIL (fdo#103166, fdo#107815)
==== Possible fixes ====
igt@drv_suspend@debugfs-reader:
shard-skl: INCOMPLETE (fdo#104108) -> PASS
igt@gem_wait@write-wait-bsd1:
shard-snb: INCOMPLETE (fdo#105411) -> SKIP
igt@gem_workarounds@suspend-resume-context:
shard-kbl: INCOMPLETE (fdo#103665) -> PASS
igt@kms_busy@extended-pageflip-modeset-hang-oldfb-render-a:
shard-snb: DMESG-WARN (fdo#107956) -> PASS
igt@kms_ccs@pipe-b-crc-sprite-planes-basic:
shard-glk: FAIL (fdo#108145) -> PASS
igt@kms_color@pipe-b-ctm-max:
shard-apl: DMESG-WARN (fdo#108549) -> PASS +14
igt@kms_cursor_crc@cursor-64x64-onscreen:
shard-apl: FAIL (fdo#103232) -> PASS +1
igt@kms_cursor_crc@cursor-64x64-suspend:
shard-apl: FAIL (fdo#103232, fdo#103191) -> PASS
igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-mmap-cpu:
shard-glk: DMESG-WARN (fdo#106538, fdo#105763) -> PASS +1
igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-pwrite:
shard-apl: FAIL (fdo#103167) -> PASS +1
igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-onoff:
shard-glk: FAIL (fdo#103167) -> PASS +2
igt@kms_plane@plane-panning-bottom-right-suspend-pipe-c-planes:
shard-apl: FAIL (fdo#103375) -> PASS
igt@kms_plane@plane-panning-top-left-pipe-b-planes:
shard-apl: INCOMPLETE (fdo#103927) -> PASS
igt@kms_plane_multiple@atomic-pipe-a-tiling-x:
shard-apl: FAIL (fdo#103166) -> PASS
igt@kms_setmode@basic:
shard-apl: FAIL (fdo#99912) -> PASS
igt@kms_vblank@pipe-b-ts-continuation-dpms-suspend:
shard-snb: DMESG-WARN (fdo#102365) -> PASS
igt@kms_vblank@pipe-c-ts-continuation-dpms-rpm:
shard-apl: DMESG-FAIL (fdo#108549) -> PASS
igt@pm_rpm@dpms-lpsp:
shard-skl: INCOMPLETE (fdo#107807) -> PASS
==== Warnings ====
igt@kms_cursor_crc@cursor-128x128-suspend:
shard-apl: FAIL (fdo#103232, fdo#103191) -> DMESG-WARN (fdo#108549)
igt@kms_cursor_crc@cursor-64x64-sliding:
shard-apl: DMESG-FAIL (fdo#108549, fdo#103232) -> DMESG-WARN (fdo#108549)
igt@kms_plane_multiple@atomic-pipe-c-tiling-x:
shard-apl: FAIL (fdo#103166) -> DMESG-WARN (fdo#108549)
fdo#102365 https://bugs.freedesktop.org/show_bug.cgi?id=102365
fdo#102887 https://bugs.freedesktop.org/show_bug.cgi?id=102887
fdo#103158 https://bugs.freedesktop.org/show_bug.cgi?id=103158
fdo#103166 https://bugs.freedesktop.org/show_bug.cgi?id=103166
fdo#103167 https://bugs.freedesktop.org/show_bug.cgi?id=103167
fdo#103191 https://bugs.freedesktop.org/show_bug.cgi?id=103191
fdo#103232 https://bugs.freedesktop.org/show_bug.cgi?id=103232
fdo#103375 https://bugs.freedesktop.org/show_bug.cgi?id=103375
fdo#103665 https://bugs.freedesktop.org/show_bug.cgi?id=103665
fdo#103927 https://bugs.freedesktop.org/show_bug.cgi?id=103927
fdo#104108 https://bugs.freedesktop.org/show_bug.cgi?id=104108
fdo#105345 https://bugs.freedesktop.org/show_bug.cgi?id=105345
fdo#105363 https://bugs.freedesktop.org/show_bug.cgi?id=105363
fdo#105411 https://bugs.freedesktop.org/show_bug.cgi?id=105411
fdo#105763 https://bugs.freedesktop.org/show_bug.cgi?id=105763
fdo#106538 https://bugs.freedesktop.org/show_bug.cgi?id=106538
fdo#107807 https://bugs.freedesktop.org/show_bug.cgi?id=107807
fdo#107815 https://bugs.freedesktop.org/show_bug.cgi?id=107815
fdo#107956 https://bugs.freedesktop.org/show_bug.cgi?id=107956
fdo#108073 https://bugs.freedesktop.org/show_bug.cgi?id=108073
fdo#108074 https://bugs.freedesktop.org/show_bug.cgi?id=108074
fdo#108145 https://bugs.freedesktop.org/show_bug.cgi?id=108145
fdo#108549 https://bugs.freedesktop.org/show_bug.cgi?id=108549
fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912
== Participating hosts (6 -> 6) ==
No changes in participating hosts
== Build changes ==
* Linux: CI_DRM_5044 -> Patchwork_10611
CI_DRM_5044: c4487dca27970879bf67f331614142c749984d65 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_4698: af57164fcb16950187ad402ed31f565e88c42a78 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_10611: a67d83114567ab312bf49354690c6da07542e708 @ 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_10611/shards.html
_______________________________________________
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: [CI v3 1/2] drm/i915: Add function to check for linear surfaces
2018-10-26 19:38 [CI v3 1/2] drm/i915: Add function to check for linear surfaces Dhinakaran Pandiyan
` (2 preceding siblings ...)
2018-10-27 5:21 ` ✓ Fi.CI.IGT: " Patchwork
@ 2018-10-29 19:51 ` Dhinakaran Pandiyan
3 siblings, 0 replies; 5+ messages in thread
From: Dhinakaran Pandiyan @ 2018-10-29 19:51 UTC (permalink / raw)
To: intel-gfx
On Fri, 2018-10-26 at 12:38 -0700, Dhinakaran Pandiyan wrote:
> A framebuffer can comprise surfaces with distinct tiling formats,
> making checks against modifier alone insufficient. Make use of a
> function to identify a linear surface based on both modifier and
> color
> plane.
>
> v2: Typo fix
> v3: remove 'inline' from function definition (Ville)
>
> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Signed-off-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Thanks for the review, pushed series to -queued.
-DK
_______________________________________________
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:[~2018-10-29 19:51 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-10-26 19:38 [CI v3 1/2] drm/i915: Add function to check for linear surfaces Dhinakaran Pandiyan
2018-10-26 19:38 ` [CI v3 2/2] drm/i915: Do not program aux plane offsets on gen11+ Dhinakaran Pandiyan
2018-10-26 20:12 ` ✓ Fi.CI.BAT: success for series starting with [CI,v3,1/2] drm/i915: Add function to check for linear surfaces Patchwork
2018-10-27 5:21 ` ✓ Fi.CI.IGT: " Patchwork
2018-10-29 19:51 ` [CI v3 1/2] " Dhinakaran Pandiyan
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox