* [igt-dev] [PATCH i-g-t v2 2/3] lib/debugfs: Don't do CRC sanity checks on amdgpu
2019-03-15 15:04 [igt-dev] [PATCH i-g-t v2 1/3] lib/drmtest: Add helpers to check and require amdgpu Nicholas Kazlauskas
@ 2019-03-15 15:04 ` Nicholas Kazlauskas
2019-03-27 15:10 ` Wentland, Harry
2019-03-15 15:04 ` [igt-dev] [PATCH i-g-t v2 3/3] lib/igt_fb: Align min_stride to 256 bytes for YUV buffers " Nicholas Kazlauskas
` (3 subsequent siblings)
4 siblings, 1 reply; 11+ messages in thread
From: Nicholas Kazlauskas @ 2019-03-15 15:04 UTC (permalink / raw)
To: igt-dev
A black FB on amdgpu returns a CRC of (0, 0, 0), which IGT considers
suspicious. All our CRC values are also 16-bit so a value of 0xffffffff
can't be obtained.
Drop the suspicious CRC checks on amdgpu by checking the device in
crc_sanity_checks. We need the drm_fd for this so pass in pipe_crc
to the function to get it. It makes more sense to me to do it this
way than to duplicate code and the explanation on both calls to
crc_sanity_checks.
v2: rebase
Cc: Leo Li <sunpeng.li@amd.com>
Cc: Harry Wentland <harry.wentland@amd.com>
Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
---
lib/igt_debugfs.c | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/lib/igt_debugfs.c b/lib/igt_debugfs.c
index 7849faad..dd229c09 100644
--- a/lib/igt_debugfs.c
+++ b/lib/igt_debugfs.c
@@ -872,11 +872,15 @@ igt_pipe_crc_get_crcs(igt_pipe_crc_t *pipe_crc, int n_crcs,
return n;
}
-static void crc_sanity_checks(igt_crc_t *crc)
+static void crc_sanity_checks(igt_pipe_crc_t *pipe_crc, igt_crc_t *crc)
{
int i;
bool all_zero = true;
+ /* Any CRC value can be considered valid on amdgpu hardware. */
+ if (is_amdgpu_device(pipe_crc->fd))
+ return;
+
for (i = 0; i < crc->n_words; i++) {
igt_warn_on_f(crc->crc[i] == 0xffffffff,
"Suspicious CRC: it looks like the CRC "
@@ -930,7 +934,7 @@ void igt_pipe_crc_get_single(igt_pipe_crc_t *pipe_crc, igt_crc_t *crc)
{
read_one_crc(pipe_crc, crc);
- crc_sanity_checks(crc);
+ crc_sanity_checks(pipe_crc, crc);
}
/**
@@ -959,7 +963,7 @@ igt_pipe_crc_get_current(int drm_fd, igt_pipe_crc_t *pipe_crc, igt_crc_t *crc)
}
} while (igt_vblank_before_eq(crc->frame, vblank));
- crc_sanity_checks(crc);
+ crc_sanity_checks(pipe_crc, crc);
}
/**
--
2.17.1
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 11+ messages in thread* Re: [igt-dev] [PATCH i-g-t v2 2/3] lib/debugfs: Don't do CRC sanity checks on amdgpu
2019-03-15 15:04 ` [igt-dev] [PATCH i-g-t v2 2/3] lib/debugfs: Don't do CRC sanity checks on amdgpu Nicholas Kazlauskas
@ 2019-03-27 15:10 ` Wentland, Harry
2019-03-27 17:09 ` Daniel Vetter
0 siblings, 1 reply; 11+ messages in thread
From: Wentland, Harry @ 2019-03-27 15:10 UTC (permalink / raw)
To: Kazlauskas, Nicholas, igt-dev@lists.freedesktop.org
On 2019-03-15 11:04 a.m., Nicholas Kazlauskas wrote:
> A black FB on amdgpu returns a CRC of (0, 0, 0), which IGT considers
> suspicious. All our CRC values are also 16-bit so a value of 0xffffffff
> can't be obtained.
>
> Drop the suspicious CRC checks on amdgpu by checking the device in
> crc_sanity_checks. We need the drm_fd for this so pass in pipe_crc
> to the function to get it. It makes more sense to me to do it this
> way than to duplicate code and the explanation on both calls to
> crc_sanity_checks.
>
> v2: rebase
>
> Cc: Leo Li <sunpeng.li@amd.com>
> Cc: Harry Wentland <harry.wentland@amd.com>
> Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
Reviewed-by: Harry Wentland <harry.wentland@amd.com>
Harry
> ---
> lib/igt_debugfs.c | 10 +++++++---
> 1 file changed, 7 insertions(+), 3 deletions(-)
>
> diff --git a/lib/igt_debugfs.c b/lib/igt_debugfs.c
> index 7849faad..dd229c09 100644
> --- a/lib/igt_debugfs.c
> +++ b/lib/igt_debugfs.c
> @@ -872,11 +872,15 @@ igt_pipe_crc_get_crcs(igt_pipe_crc_t *pipe_crc, int n_crcs,
> return n;
> }
>
> -static void crc_sanity_checks(igt_crc_t *crc)
> +static void crc_sanity_checks(igt_pipe_crc_t *pipe_crc, igt_crc_t *crc)
> {
> int i;
> bool all_zero = true;
>
> + /* Any CRC value can be considered valid on amdgpu hardware. */
> + if (is_amdgpu_device(pipe_crc->fd))
> + return;
> +
> for (i = 0; i < crc->n_words; i++) {
> igt_warn_on_f(crc->crc[i] == 0xffffffff,
> "Suspicious CRC: it looks like the CRC "
> @@ -930,7 +934,7 @@ void igt_pipe_crc_get_single(igt_pipe_crc_t *pipe_crc, igt_crc_t *crc)
> {
> read_one_crc(pipe_crc, crc);
>
> - crc_sanity_checks(crc);
> + crc_sanity_checks(pipe_crc, crc);
> }
>
> /**
> @@ -959,7 +963,7 @@ igt_pipe_crc_get_current(int drm_fd, igt_pipe_crc_t *pipe_crc, igt_crc_t *crc)
> }
> } while (igt_vblank_before_eq(crc->frame, vblank));
>
> - crc_sanity_checks(crc);
> + crc_sanity_checks(pipe_crc, crc);
> }
>
> /**
>
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 11+ messages in thread* Re: [igt-dev] [PATCH i-g-t v2 2/3] lib/debugfs: Don't do CRC sanity checks on amdgpu
2019-03-27 15:10 ` Wentland, Harry
@ 2019-03-27 17:09 ` Daniel Vetter
2019-03-27 17:17 ` Kazlauskas, Nicholas
0 siblings, 1 reply; 11+ messages in thread
From: Daniel Vetter @ 2019-03-27 17:09 UTC (permalink / raw)
To: Wentland, Harry; +Cc: igt-dev@lists.freedesktop.org
On Wed, Mar 27, 2019 at 4:11 PM Wentland, Harry <Harry.Wentland@amd.com> wrote:
>
>
>
> On 2019-03-15 11:04 a.m., Nicholas Kazlauskas wrote:
> > A black FB on amdgpu returns a CRC of (0, 0, 0), which IGT considers
> > suspicious. All our CRC values are also 16-bit so a value of 0xffffffff
> > can't be obtained.
> >
> > Drop the suspicious CRC checks on amdgpu by checking the device in
> > crc_sanity_checks. We need the drm_fd for this so pass in pipe_crc
> > to the function to get it. It makes more sense to me to do it this
> > way than to duplicate code and the explanation on both calls to
> > crc_sanity_checks.
> >
> > v2: rebase
> >
> > Cc: Leo Li <sunpeng.li@amd.com>
> > Cc: Harry Wentland <harry.wentland@amd.com>
> > Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
>
> Reviewed-by: Harry Wentland <harry.wentland@amd.com>
Hm, I think simpler to just drop this test entirely. It's kinda bogus.
Or at least have the sanity check only for the kms_pipe_crc_basic
testcases. But I guess this works too.
-Daniel
>
> Harry
>
> > ---
> > lib/igt_debugfs.c | 10 +++++++---
> > 1 file changed, 7 insertions(+), 3 deletions(-)
> >
> > diff --git a/lib/igt_debugfs.c b/lib/igt_debugfs.c
> > index 7849faad..dd229c09 100644
> > --- a/lib/igt_debugfs.c
> > +++ b/lib/igt_debugfs.c
> > @@ -872,11 +872,15 @@ igt_pipe_crc_get_crcs(igt_pipe_crc_t *pipe_crc, int n_crcs,
> > return n;
> > }
> >
> > -static void crc_sanity_checks(igt_crc_t *crc)
> > +static void crc_sanity_checks(igt_pipe_crc_t *pipe_crc, igt_crc_t *crc)
> > {
> > int i;
> > bool all_zero = true;
> >
> > + /* Any CRC value can be considered valid on amdgpu hardware. */
> > + if (is_amdgpu_device(pipe_crc->fd))
> > + return;
> > +
> > for (i = 0; i < crc->n_words; i++) {
> > igt_warn_on_f(crc->crc[i] == 0xffffffff,
> > "Suspicious CRC: it looks like the CRC "
> > @@ -930,7 +934,7 @@ void igt_pipe_crc_get_single(igt_pipe_crc_t *pipe_crc, igt_crc_t *crc)
> > {
> > read_one_crc(pipe_crc, crc);
> >
> > - crc_sanity_checks(crc);
> > + crc_sanity_checks(pipe_crc, crc);
> > }
> >
> > /**
> > @@ -959,7 +963,7 @@ igt_pipe_crc_get_current(int drm_fd, igt_pipe_crc_t *pipe_crc, igt_crc_t *crc)
> > }
> > } while (igt_vblank_before_eq(crc->frame, vblank));
> >
> > - crc_sanity_checks(crc);
> > + crc_sanity_checks(pipe_crc, crc);
> > }
> >
> > /**
> >
> _______________________________________________
> igt-dev mailing list
> igt-dev@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/igt-dev
--
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 11+ messages in thread* Re: [igt-dev] [PATCH i-g-t v2 2/3] lib/debugfs: Don't do CRC sanity checks on amdgpu
2019-03-27 17:09 ` Daniel Vetter
@ 2019-03-27 17:17 ` Kazlauskas, Nicholas
2019-03-28 9:11 ` Daniel Vetter
0 siblings, 1 reply; 11+ messages in thread
From: Kazlauskas, Nicholas @ 2019-03-27 17:17 UTC (permalink / raw)
To: Daniel Vetter, Wentland, Harry; +Cc: igt-dev@lists.freedesktop.org
On 3/27/19 1:09 PM, Daniel Vetter wrote:
> On Wed, Mar 27, 2019 at 4:11 PM Wentland, Harry <Harry.Wentland@amd.com> wrote:
>>
>>
>>
>> On 2019-03-15 11:04 a.m., Nicholas Kazlauskas wrote:
>>> A black FB on amdgpu returns a CRC of (0, 0, 0), which IGT considers
>>> suspicious. All our CRC values are also 16-bit so a value of 0xffffffff
>>> can't be obtained.
>>>
>>> Drop the suspicious CRC checks on amdgpu by checking the device in
>>> crc_sanity_checks. We need the drm_fd for this so pass in pipe_crc
>>> to the function to get it. It makes more sense to me to do it this
>>> way than to duplicate code and the explanation on both calls to
>>> crc_sanity_checks.
>>>
>>> v2: rebase
>>>
>>> Cc: Leo Li <sunpeng.li@amd.com>
>>> Cc: Harry Wentland <harry.wentland@amd.com>
>>> Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
>>
>> Reviewed-by: Harry Wentland <harry.wentland@amd.com>
>
> Hm, I think simpler to just drop this test entirely. It's kinda bogus.
> Or at least have the sanity check only for the kms_pipe_crc_basic
> testcases. But I guess this works too.
> -Daniel
Isn't it still useful to keep this around for other tests on i915? Since
those special codes could happen anywhere from my understanding.
Not sure if these are really useful for any other drivers, but I figured
it was easier to just make an exception in this case for amdgpu since
the tests are explicitly bogus on it.
Nicholas Kazlauskas
>
>>
>> Harry
>>
>>> ---
>>> lib/igt_debugfs.c | 10 +++++++---
>>> 1 file changed, 7 insertions(+), 3 deletions(-)
>>>
>>> diff --git a/lib/igt_debugfs.c b/lib/igt_debugfs.c
>>> index 7849faad..dd229c09 100644
>>> --- a/lib/igt_debugfs.c
>>> +++ b/lib/igt_debugfs.c
>>> @@ -872,11 +872,15 @@ igt_pipe_crc_get_crcs(igt_pipe_crc_t *pipe_crc, int n_crcs,
>>> return n;
>>> }
>>>
>>> -static void crc_sanity_checks(igt_crc_t *crc)
>>> +static void crc_sanity_checks(igt_pipe_crc_t *pipe_crc, igt_crc_t *crc)
>>> {
>>> int i;
>>> bool all_zero = true;
>>>
>>> + /* Any CRC value can be considered valid on amdgpu hardware. */
>>> + if (is_amdgpu_device(pipe_crc->fd))
>>> + return;
>>> +
>>> for (i = 0; i < crc->n_words; i++) {
>>> igt_warn_on_f(crc->crc[i] == 0xffffffff,
>>> "Suspicious CRC: it looks like the CRC "
>>> @@ -930,7 +934,7 @@ void igt_pipe_crc_get_single(igt_pipe_crc_t *pipe_crc, igt_crc_t *crc)
>>> {
>>> read_one_crc(pipe_crc, crc);
>>>
>>> - crc_sanity_checks(crc);
>>> + crc_sanity_checks(pipe_crc, crc);
>>> }
>>>
>>> /**
>>> @@ -959,7 +963,7 @@ igt_pipe_crc_get_current(int drm_fd, igt_pipe_crc_t *pipe_crc, igt_crc_t *crc)
>>> }
>>> } while (igt_vblank_before_eq(crc->frame, vblank));
>>>
>>> - crc_sanity_checks(crc);
>>> + crc_sanity_checks(pipe_crc, crc);
>>> }
>>>
>>> /**
>>>
>> _______________________________________________
>> igt-dev mailing list
>> igt-dev@lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/igt-dev
>
>
>
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 11+ messages in thread* Re: [igt-dev] [PATCH i-g-t v2 2/3] lib/debugfs: Don't do CRC sanity checks on amdgpu
2019-03-27 17:17 ` Kazlauskas, Nicholas
@ 2019-03-28 9:11 ` Daniel Vetter
0 siblings, 0 replies; 11+ messages in thread
From: Daniel Vetter @ 2019-03-28 9:11 UTC (permalink / raw)
To: Kazlauskas, Nicholas; +Cc: igt-dev@lists.freedesktop.org
On Wed, Mar 27, 2019 at 05:17:21PM +0000, Kazlauskas, Nicholas wrote:
> On 3/27/19 1:09 PM, Daniel Vetter wrote:
> > On Wed, Mar 27, 2019 at 4:11 PM Wentland, Harry <Harry.Wentland@amd.com> wrote:
> >>
> >>
> >>
> >> On 2019-03-15 11:04 a.m., Nicholas Kazlauskas wrote:
> >>> A black FB on amdgpu returns a CRC of (0, 0, 0), which IGT considers
> >>> suspicious. All our CRC values are also 16-bit so a value of 0xffffffff
> >>> can't be obtained.
> >>>
> >>> Drop the suspicious CRC checks on amdgpu by checking the device in
> >>> crc_sanity_checks. We need the drm_fd for this so pass in pipe_crc
> >>> to the function to get it. It makes more sense to me to do it this
> >>> way than to duplicate code and the explanation on both calls to
> >>> crc_sanity_checks.
> >>>
> >>> v2: rebase
> >>>
> >>> Cc: Leo Li <sunpeng.li@amd.com>
> >>> Cc: Harry Wentland <harry.wentland@amd.com>
> >>> Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
> >>
> >> Reviewed-by: Harry Wentland <harry.wentland@amd.com>
> >
> > Hm, I think simpler to just drop this test entirely. It's kinda bogus.
> > Or at least have the sanity check only for the kms_pipe_crc_basic
> > testcases. But I guess this works too.
> > -Daniel
> Isn't it still useful to keep this around for other tests on i915? Since
> those special codes could happen anywhere from my understanding.
>
> Not sure if these are really useful for any other drivers, but I figured
> it was easier to just make an exception in this case for amdgpu since
> the tests are explicitly bogus on it.
It essentially tests for "did we never record a crc and it's still all 0"
and "has the hw died and returns all 1s". But those values can happen too,
so I'm not sure it's all that useful really even on i915.
Except maybe in the basic "do our crcs produce useful data" testcase, and
there we could perhaps do an explicit if (intel) { crc sanity checks for
i915 ) logic.
Just a drive-by idea really.
-Daniel
>
> Nicholas Kazlauskas
>
> >
> >>
> >> Harry
> >>
> >>> ---
> >>> lib/igt_debugfs.c | 10 +++++++---
> >>> 1 file changed, 7 insertions(+), 3 deletions(-)
> >>>
> >>> diff --git a/lib/igt_debugfs.c b/lib/igt_debugfs.c
> >>> index 7849faad..dd229c09 100644
> >>> --- a/lib/igt_debugfs.c
> >>> +++ b/lib/igt_debugfs.c
> >>> @@ -872,11 +872,15 @@ igt_pipe_crc_get_crcs(igt_pipe_crc_t *pipe_crc, int n_crcs,
> >>> return n;
> >>> }
> >>>
> >>> -static void crc_sanity_checks(igt_crc_t *crc)
> >>> +static void crc_sanity_checks(igt_pipe_crc_t *pipe_crc, igt_crc_t *crc)
> >>> {
> >>> int i;
> >>> bool all_zero = true;
> >>>
> >>> + /* Any CRC value can be considered valid on amdgpu hardware. */
> >>> + if (is_amdgpu_device(pipe_crc->fd))
> >>> + return;
> >>> +
> >>> for (i = 0; i < crc->n_words; i++) {
> >>> igt_warn_on_f(crc->crc[i] == 0xffffffff,
> >>> "Suspicious CRC: it looks like the CRC "
> >>> @@ -930,7 +934,7 @@ void igt_pipe_crc_get_single(igt_pipe_crc_t *pipe_crc, igt_crc_t *crc)
> >>> {
> >>> read_one_crc(pipe_crc, crc);
> >>>
> >>> - crc_sanity_checks(crc);
> >>> + crc_sanity_checks(pipe_crc, crc);
> >>> }
> >>>
> >>> /**
> >>> @@ -959,7 +963,7 @@ igt_pipe_crc_get_current(int drm_fd, igt_pipe_crc_t *pipe_crc, igt_crc_t *crc)
> >>> }
> >>> } while (igt_vblank_before_eq(crc->frame, vblank));
> >>>
> >>> - crc_sanity_checks(crc);
> >>> + crc_sanity_checks(pipe_crc, crc);
> >>> }
> >>>
> >>> /**
> >>>
> >> _______________________________________________
> >> igt-dev mailing list
> >> igt-dev@lists.freedesktop.org
> >> https://lists.freedesktop.org/mailman/listinfo/igt-dev
> >
> >
> >
>
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 11+ messages in thread
* [igt-dev] [PATCH i-g-t v2 3/3] lib/igt_fb: Align min_stride to 256 bytes for YUV buffers on amdgpu
2019-03-15 15:04 [igt-dev] [PATCH i-g-t v2 1/3] lib/drmtest: Add helpers to check and require amdgpu Nicholas Kazlauskas
2019-03-15 15:04 ` [igt-dev] [PATCH i-g-t v2 2/3] lib/debugfs: Don't do CRC sanity checks on amdgpu Nicholas Kazlauskas
@ 2019-03-15 15:04 ` Nicholas Kazlauskas
2019-03-27 15:15 ` Wentland, Harry
2019-03-18 10:13 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,v2,1/3] lib/drmtest: Add helpers to check and require amdgpu (rev2) Patchwork
` (2 subsequent siblings)
4 siblings, 1 reply; 11+ messages in thread
From: Nicholas Kazlauskas @ 2019-03-15 15:04 UTC (permalink / raw)
To: igt-dev
The chroma address needs to be 256 byte aligned on amdgpu and the
easiest way to do so is to align the minimum stride for the luma.
v2: added this patch
Cc: Leo Li <sunpeng.li@amd.com>
Cc: Harry Wentland <harry.wentland@amd.com>
Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
---
lib/igt_fb.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/lib/igt_fb.c b/lib/igt_fb.c
index 6a9a9341..e86b5cbc 100644
--- a/lib/igt_fb.c
+++ b/lib/igt_fb.c
@@ -467,6 +467,12 @@ static uint32_t calc_plane_stride(struct igt_fb *fb, int plane)
stride = roundup_power_of_two(stride);
return stride;
+ } else if (igt_format_is_yuv(fb->drm_format) && is_amdgpu_device(fb->fd)) {
+ /*
+ * Chroma address needs to be aligned to 256 bytes on AMDGPU
+ * so the easiest way is to align the luma stride to 256.
+ */
+ return ALIGN(min_stride, 256);
} else {
unsigned int tile_width, tile_height;
--
2.17.1
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 11+ messages in thread* Re: [igt-dev] [PATCH i-g-t v2 3/3] lib/igt_fb: Align min_stride to 256 bytes for YUV buffers on amdgpu
2019-03-15 15:04 ` [igt-dev] [PATCH i-g-t v2 3/3] lib/igt_fb: Align min_stride to 256 bytes for YUV buffers " Nicholas Kazlauskas
@ 2019-03-27 15:15 ` Wentland, Harry
0 siblings, 0 replies; 11+ messages in thread
From: Wentland, Harry @ 2019-03-27 15:15 UTC (permalink / raw)
To: Kazlauskas, Nicholas, igt-dev@lists.freedesktop.org
On 2019-03-15 11:04 a.m., Nicholas Kazlauskas wrote:
> The chroma address needs to be 256 byte aligned on amdgpu and the
> easiest way to do so is to align the minimum stride for the luma.
>
> v2: added this patch
>
> Cc: Leo Li <sunpeng.li@amd.com>
> Cc: Harry Wentland <harry.wentland@amd.com>
> Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
Reviewed-by Harry Wentland <harry.wentland@amd.com>
Harry
> ---
> lib/igt_fb.c | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/lib/igt_fb.c b/lib/igt_fb.c
> index 6a9a9341..e86b5cbc 100644
> --- a/lib/igt_fb.c
> +++ b/lib/igt_fb.c
> @@ -467,6 +467,12 @@ static uint32_t calc_plane_stride(struct igt_fb *fb, int plane)
> stride = roundup_power_of_two(stride);
>
> return stride;
> + } else if (igt_format_is_yuv(fb->drm_format) && is_amdgpu_device(fb->fd)) {
> + /*
> + * Chroma address needs to be aligned to 256 bytes on AMDGPU
> + * so the easiest way is to align the luma stride to 256.
> + */
> + return ALIGN(min_stride, 256);
> } else {
> unsigned int tile_width, tile_height;
>
>
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 11+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,v2,1/3] lib/drmtest: Add helpers to check and require amdgpu (rev2)
2019-03-15 15:04 [igt-dev] [PATCH i-g-t v2 1/3] lib/drmtest: Add helpers to check and require amdgpu Nicholas Kazlauskas
2019-03-15 15:04 ` [igt-dev] [PATCH i-g-t v2 2/3] lib/debugfs: Don't do CRC sanity checks on amdgpu Nicholas Kazlauskas
2019-03-15 15:04 ` [igt-dev] [PATCH i-g-t v2 3/3] lib/igt_fb: Align min_stride to 256 bytes for YUV buffers " Nicholas Kazlauskas
@ 2019-03-18 10:13 ` Patchwork
2019-03-18 11:54 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2019-03-27 15:09 ` [igt-dev] [PATCH i-g-t v2 1/3] lib/drmtest: Add helpers to check and require amdgpu Wentland, Harry
4 siblings, 0 replies; 11+ messages in thread
From: Patchwork @ 2019-03-18 10:13 UTC (permalink / raw)
To: Nicholas Kazlauskas; +Cc: igt-dev
== Series Details ==
Series: series starting with [i-g-t,v2,1/3] lib/drmtest: Add helpers to check and require amdgpu (rev2)
URL : https://patchwork.freedesktop.org/series/58066/
State : success
== Summary ==
CI Bug Log - changes from IGT_4888 -> IGTPW_2643
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://patchwork.freedesktop.org/api/1.0/series/58066/revisions/2/mbox/
Known issues
------------
Here are the changes found in IGTPW_2643 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@amdgpu/amd_cs_nop@sync-gfx0:
- fi-kbl-7567u: NOTRUN -> SKIP [fdo#109271] +17
* igt@i915_module_load@reload:
- fi-kbl-7567u: PASS -> DMESG-WARN [fdo#105602] / [fdo#108529]
* igt@i915_pm_rpm@module-reload:
- fi-kbl-7567u: NOTRUN -> DMESG-WARN [fdo#108529]
* igt@i915_selftest@live_evict:
- fi-bsw-kefka: PASS -> DMESG-WARN [fdo#107709]
* igt@i915_selftest@live_execlists:
- fi-apl-guc: PASS -> INCOMPLETE [fdo#103927] / [fdo#109720]
* igt@kms_busy@basic-flip-b:
- fi-gdg-551: PASS -> FAIL [fdo#103182]
* igt@kms_chamelium@common-hpd-after-suspend:
- fi-kbl-7567u: PASS -> DMESG-FAIL [fdo#105079]
* igt@kms_pipe_crc_basic@nonblocking-crc-pipe-c:
- fi-kbl-7567u: PASS -> SKIP [fdo#109271] +33
* igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a:
- fi-whl-u: PASS -> FAIL [fdo#103375] +3
* igt@runner@aborted:
- fi-bsw-kefka: NOTRUN -> FAIL [fdo#107709]
#### Possible fixes ####
* igt@prime_vgem@basic-fence-flip:
- fi-ilk-650: FAIL [fdo#104008] -> PASS
[fdo#103182]: https://bugs.freedesktop.org/show_bug.cgi?id=103182
[fdo#103375]: https://bugs.freedesktop.org/show_bug.cgi?id=103375
[fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927
[fdo#104008]: https://bugs.freedesktop.org/show_bug.cgi?id=104008
[fdo#105079]: https://bugs.freedesktop.org/show_bug.cgi?id=105079
[fdo#105602]: https://bugs.freedesktop.org/show_bug.cgi?id=105602
[fdo#107709]: https://bugs.freedesktop.org/show_bug.cgi?id=107709
[fdo#108529]: https://bugs.freedesktop.org/show_bug.cgi?id=108529
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109720]: https://bugs.freedesktop.org/show_bug.cgi?id=109720
Participating hosts (46 -> 38)
------------------------------
Missing (8): fi-kbl-soraka fi-ilk-m540 fi-bdw-5557u fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-byt-clapper fi-bdw-samus
Build changes
-------------
* IGT: IGT_4888 -> IGTPW_2643
* Linux: CI_DRM_5756 -> CI_DRM_5763
CI_DRM_5756: 0a2a982693ac3f3ecabf8e6c12cb18aa993ae3b0 @ git://anongit.freedesktop.org/gfx-ci/linux
CI_DRM_5763: de2772b353b83e6347687973dfff6f7f5257e364 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_2643: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2643/
IGT_4888: 71ad19eb8fe4f0eecae3bf063e107293b90b9abc @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2643/
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 11+ messages in thread* [igt-dev] ✓ Fi.CI.IGT: success for series starting with [i-g-t,v2,1/3] lib/drmtest: Add helpers to check and require amdgpu (rev2)
2019-03-15 15:04 [igt-dev] [PATCH i-g-t v2 1/3] lib/drmtest: Add helpers to check and require amdgpu Nicholas Kazlauskas
` (2 preceding siblings ...)
2019-03-18 10:13 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,v2,1/3] lib/drmtest: Add helpers to check and require amdgpu (rev2) Patchwork
@ 2019-03-18 11:54 ` Patchwork
2019-03-27 15:09 ` [igt-dev] [PATCH i-g-t v2 1/3] lib/drmtest: Add helpers to check and require amdgpu Wentland, Harry
4 siblings, 0 replies; 11+ messages in thread
From: Patchwork @ 2019-03-18 11:54 UTC (permalink / raw)
To: Nicholas Kazlauskas; +Cc: igt-dev
== Series Details ==
Series: series starting with [i-g-t,v2,1/3] lib/drmtest: Add helpers to check and require amdgpu (rev2)
URL : https://patchwork.freedesktop.org/series/58066/
State : success
== Summary ==
CI Bug Log - changes from IGT_4888_full -> IGTPW_2643_full
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://patchwork.freedesktop.org/api/1.0/series/58066/revisions/2/mbox/
Known issues
------------
Here are the changes found in IGTPW_2643_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@kms_atomic_transition@3x-modeset-transitions-nonblocking:
- shard-snb: NOTRUN -> SKIP [fdo#109271] / [fdo#109278] +9
* igt@kms_atomic_transition@plane-all-modeset-transition-fencing:
- shard-hsw: PASS -> DMESG-WARN [fdo#102614]
* igt@kms_busy@extended-modeset-hang-newfb-render-c:
- shard-kbl: PASS -> DMESG-WARN [fdo#107956]
* igt@kms_busy@extended-modeset-hang-newfb-with-reset-render-b:
- shard-snb: NOTRUN -> DMESG-WARN [fdo#107956]
- shard-hsw: PASS -> DMESG-WARN [fdo#107956]
* igt@kms_ccs@pipe-a-crc-sprite-planes-basic:
- shard-glk: PASS -> FAIL [fdo#108145]
* igt@kms_cursor_crc@cursor-128x128-dpms:
- shard-kbl: PASS -> FAIL [fdo#103232] +2
* igt@kms_cursor_crc@cursor-128x128-suspend:
- shard-apl: PASS -> FAIL [fdo#103191] / [fdo#103232]
* igt@kms_cursor_crc@cursor-64x21-sliding:
- shard-apl: PASS -> FAIL [fdo#103232] +3
* igt@kms_cursor_crc@cursor-alpha-opaque:
- shard-apl: PASS -> FAIL [fdo#109350]
* igt@kms_flip@flip-vs-suspend-interruptible:
- shard-hsw: PASS -> INCOMPLETE [fdo#103540]
* igt@kms_flip@modeset-vs-vblank-race:
- shard-glk: PASS -> FAIL [fdo#103060]
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-mmap-wc:
- shard-glk: PASS -> FAIL [fdo#103167] +4
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-pwrite:
- shard-apl: PASS -> FAIL [fdo#103167] +3
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-render:
- shard-kbl: PASS -> FAIL [fdo#103167] +1
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-indfb-msflip-blt:
- shard-hsw: PASS -> SKIP [fdo#109271]
* igt@kms_frontbuffer_tracking@fbcpsr-rgb565-draw-mmap-gtt:
- shard-kbl: NOTRUN -> SKIP [fdo#109271] +5
* igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-onoff:
- shard-snb: NOTRUN -> SKIP [fdo#109271] +99
* igt@kms_psr@sprite_plane_onoff:
- shard-glk: NOTRUN -> SKIP [fdo#109271] +10
* igt@kms_rotation_crc@multiplane-rotation:
- shard-kbl: PASS -> INCOMPLETE [fdo#103665]
* igt@kms_rotation_crc@multiplane-rotation-cropping-top:
- shard-kbl: PASS -> FAIL [fdo#109016]
* igt@kms_setmode@basic:
- shard-hsw: PASS -> FAIL [fdo#99912]
* igt@prime_nv_api@i915_nv_reimport_twice_check_flink_name:
- shard-apl: NOTRUN -> SKIP [fdo#109271] +6
* igt@sw_sync@sync_busy_fork_unixsocket:
- shard-snb: NOTRUN -> FAIL [fdo#110150 ]
#### Possible fixes ####
* igt@gem_eio@reset-stress:
- shard-snb: FAIL [fdo#109661] -> PASS
* igt@kms_busy@extended-modeset-hang-newfb-with-reset-render-a:
- shard-snb: DMESG-WARN [fdo#107956] -> PASS +1
- shard-hsw: DMESG-WARN [fdo#107956] -> PASS
- shard-kbl: DMESG-WARN [fdo#107956] -> PASS
* igt@kms_cursor_crc@cursor-128x128-onscreen:
- shard-apl: FAIL [fdo#103232] -> PASS
* igt@kms_cursor_crc@cursor-64x64-suspend:
- shard-apl: FAIL [fdo#103191] / [fdo#103232] -> PASS
- shard-kbl: FAIL [fdo#103191] / [fdo#103232] -> PASS
* igt@kms_cursor_legacy@2x-long-cursor-vs-flip-legacy:
- shard-hsw: FAIL [fdo#105767] -> PASS
* igt@kms_flip@modeset-vs-vblank-race-interruptible:
- shard-glk: FAIL [fdo#103060] -> PASS
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-mmap-gtt:
- shard-apl: FAIL [fdo#103167] -> PASS +1
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-fullscreen:
- shard-kbl: FAIL [fdo#103167] -> PASS +1
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-onoff:
- shard-glk: FAIL [fdo#103167] -> PASS +3
* igt@kms_pipe_crc_basic@suspend-read-crc-pipe-c:
- shard-kbl: INCOMPLETE [fdo#103665] -> PASS
* {igt@kms_plane@pixel-format-pipe-a-planes-source-clamping}:
- shard-apl: FAIL [fdo#110033] -> PASS +1
- shard-kbl: FAIL -> PASS
* {igt@kms_plane_multiple@atomic-pipe-b-tiling-none}:
- shard-apl: FAIL [fdo#110037] -> PASS +3
* igt@kms_vblank@pipe-c-ts-continuation-modeset:
- shard-kbl: FAIL [fdo#104894] -> PASS
- shard-apl: FAIL [fdo#104894] -> PASS
#### Warnings ####
* igt@kms_plane_scaling@pipe-a-scaler-with-rotation:
- shard-glk: FAIL [fdo#110098] -> SKIP [fdo#109271] / [fdo#109278]
* igt@kms_plane_scaling@pipe-c-scaler-with-rotation:
- shard-glk: SKIP [fdo#109271] / [fdo#109278] -> FAIL [fdo#110098]
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#102614]: https://bugs.freedesktop.org/show_bug.cgi?id=102614
[fdo#103060]: https://bugs.freedesktop.org/show_bug.cgi?id=103060
[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#103540]: https://bugs.freedesktop.org/show_bug.cgi?id=103540
[fdo#103665]: https://bugs.freedesktop.org/show_bug.cgi?id=103665
[fdo#104894]: https://bugs.freedesktop.org/show_bug.cgi?id=104894
[fdo#105767]: https://bugs.freedesktop.org/show_bug.cgi?id=105767
[fdo#107956]: https://bugs.freedesktop.org/show_bug.cgi?id=107956
[fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
[fdo#109016]: https://bugs.freedesktop.org/show_bug.cgi?id=109016
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
[fdo#109350]: https://bugs.freedesktop.org/show_bug.cgi?id=109350
[fdo#109661]: https://bugs.freedesktop.org/show_bug.cgi?id=109661
[fdo#110033]: https://bugs.freedesktop.org/show_bug.cgi?id=110033
[fdo#110037]: https://bugs.freedesktop.org/show_bug.cgi?id=110037
[fdo#110038]: https://bugs.freedesktop.org/show_bug.cgi?id=110038
[fdo#110098]: https://bugs.freedesktop.org/show_bug.cgi?id=110098
[fdo#110150 ]: https://bugs.freedesktop.org/show_bug.cgi?id=110150
[fdo#99912]: https://bugs.freedesktop.org/show_bug.cgi?id=99912
Participating hosts (7 -> 5)
------------------------------
Missing (2): shard-skl shard-iclb
Build changes
-------------
* IGT: IGT_4888 -> IGTPW_2643
* Linux: CI_DRM_5756 -> CI_DRM_5763
CI_DRM_5756: 0a2a982693ac3f3ecabf8e6c12cb18aa993ae3b0 @ git://anongit.freedesktop.org/gfx-ci/linux
CI_DRM_5763: de2772b353b83e6347687973dfff6f7f5257e364 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_2643: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2643/
IGT_4888: 71ad19eb8fe4f0eecae3bf063e107293b90b9abc @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2643/
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 11+ messages in thread* Re: [igt-dev] [PATCH i-g-t v2 1/3] lib/drmtest: Add helpers to check and require amdgpu
2019-03-15 15:04 [igt-dev] [PATCH i-g-t v2 1/3] lib/drmtest: Add helpers to check and require amdgpu Nicholas Kazlauskas
` (3 preceding siblings ...)
2019-03-18 11:54 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
@ 2019-03-27 15:09 ` Wentland, Harry
4 siblings, 0 replies; 11+ messages in thread
From: Wentland, Harry @ 2019-03-27 15:09 UTC (permalink / raw)
To: Kazlauskas, Nicholas, igt-dev@lists.freedesktop.org
On 2019-03-15 11:04 a.m., Nicholas Kazlauskas wrote:
> These helpers will be used to address amdgpu specific quirks and
> features. They're implemented like the i915 and VC4 helpers.
>
> In order for the string comparison to pick up "amdgpu" the buffer size
> had to be expanded for __is_device. I've gone ahead and made it 12 bytes
> to cover everything that's there right now.
>
> v2: rebase
>
> Cc: Leo Li <sunpeng.li@amd.com>
> Cc: Harry Wentland <harry.wentland@amd.com>
> Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
Reviewed-by: Harry Wentland <harry.wentland@amd.com>
Harry
> ---
> lib/drmtest.c | 12 +++++++++++-
> lib/drmtest.h | 2 ++
> 2 files changed, 13 insertions(+), 1 deletion(-)
>
> diff --git a/lib/drmtest.c b/lib/drmtest.c
> index 6506791b..d09638e8 100644
> --- a/lib/drmtest.c
> +++ b/lib/drmtest.c
> @@ -93,7 +93,7 @@ static int __get_drm_device_name(int fd, char *name, int name_size)
>
> static bool __is_device(int fd, const char *expect)
> {
> - char name[5] = "";
> + char name[12] = "";
>
> if (__get_drm_device_name(fd, name, sizeof(name) - 1))
> return false;
> @@ -101,6 +101,11 @@ static bool __is_device(int fd, const char *expect)
> return strcmp(expect, name) == 0;
> }
>
> +bool is_amdgpu_device(int fd)
> +{
> + return __is_device(fd, "amdgpu");
> +}
> +
> bool is_i915_device(int fd)
> {
> return __is_device(fd, "i915");
> @@ -485,6 +490,11 @@ int drm_open_driver_render(int chipset)
> return fd;
> }
>
> +void igt_require_amdgpu(int fd)
> +{
> + igt_require(is_amdgpu_device(fd));
> +}
> +
> void igt_require_intel(int fd)
> {
> igt_require(is_i915_device(fd) && has_known_intel_chipset(fd));
> diff --git a/lib/drmtest.h b/lib/drmtest.h
> index ca347a71..f509e0d4 100644
> --- a/lib/drmtest.h
> +++ b/lib/drmtest.h
> @@ -79,9 +79,11 @@ int __drm_open_driver(int chipset);
>
> void gem_quiescent_gpu(int fd);
>
> +void igt_require_amdgpu(int fd);
> void igt_require_intel(int fd);
> void igt_require_vc4(int fd);
>
> +bool is_amdgpu_device(int fd);
> bool is_i915_device(int fd);
> bool is_vc4_device(int fd);
>
>
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 11+ messages in thread