Message ID | 1444185331-25751-1-git-send-email-vivek.kasireddy@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Hi, On 07/10/15 03:35, Vivek Kasireddy wrote: > This new subtest will validate a Y-tiled object's tiling mode against > its associated fb modifier. > > Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com> > Signed-off-by: Vivek Kasireddy <vivek.kasireddy@intel.com> > --- > tests/kms_addfb_basic.c | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/tests/kms_addfb_basic.c b/tests/kms_addfb_basic.c > index d466e4d..7ca1add 100644 > --- a/tests/kms_addfb_basic.c > +++ b/tests/kms_addfb_basic.c > @@ -373,6 +373,15 @@ static void addfb25_ytile(int fd, int gen) > f.handles[0] = gem_bo; > } > > + igt_subtest("addfb25-Y-tiled-X-modifier-mismatch") { > + igt_require(gen >= 9); > + igt_require_fb_modifiers(fd); > + gem_set_tiling(fd, gem_bo, I915_TILING_Y, 1024*4); > + > + f.modifier[0] = LOCAL_I915_FORMAT_MOD_X_TILED; > + igt_assert(drmIoctl(fd, LOCAL_DRM_IOCTL_MODE_ADDFB2, &f) < 0 && errno == EINVAL); > + } > + > igt_subtest("addfb25-Y-tiled") { > igt_require_fb_modifiers(fd); > Wasn't the original WARN triggered by Y tiled object and Y fb modifier? Regards, Tvrtko
Hi Tvrtko, On Wed, 7 Oct 2015 15:07:30 +0100 Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> wrote: > > Hi, > > On 07/10/15 03:35, Vivek Kasireddy wrote: > > This new subtest will validate a Y-tiled object's tiling mode > > against its associated fb modifier. > > > > Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com> > > Signed-off-by: Vivek Kasireddy <vivek.kasireddy@intel.com> > > --- > > tests/kms_addfb_basic.c | 9 +++++++++ > > 1 file changed, 9 insertions(+) > > > > diff --git a/tests/kms_addfb_basic.c b/tests/kms_addfb_basic.c > > index d466e4d..7ca1add 100644 > > --- a/tests/kms_addfb_basic.c > > +++ b/tests/kms_addfb_basic.c > > @@ -373,6 +373,15 @@ static void addfb25_ytile(int fd, int gen) > > f.handles[0] = gem_bo; > > } > > > > + igt_subtest("addfb25-Y-tiled-X-modifier-mismatch") { > > + igt_require(gen >= 9); > > + igt_require_fb_modifiers(fd); > > + gem_set_tiling(fd, gem_bo, I915_TILING_Y, 1024*4); > > + > > + f.modifier[0] = LOCAL_I915_FORMAT_MOD_X_TILED; > > + igt_assert(drmIoctl(fd, > > LOCAL_DRM_IOCTL_MODE_ADDFB2, &f) < 0 && errno == EINVAL); > > + } > > + > > igt_subtest("addfb25-Y-tiled") { > > igt_require_fb_modifiers(fd); > > > > Wasn't the original WARN triggered by Y tiled object and Y fb > modifier? Creating a new fb using a Y-tiled object and Y/X fb modifier will not trigger the original WARN. It'll be triggered only if the fb is going to be pinned -- and flipped. I am not sure how to get that WARN to be triggered with the existing suite of igt tests. Thanks and Regards, Vivek > > Regards, > > Tvrtko > >
On 07/10/15 22:07, Vivek Kasireddy wrote: > > Hi Tvrtko, > > On Wed, 7 Oct 2015 15:07:30 +0100 > Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> wrote: > >> >> Hi, >> >> On 07/10/15 03:35, Vivek Kasireddy wrote: >>> This new subtest will validate a Y-tiled object's tiling mode >>> against its associated fb modifier. >>> >>> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com> >>> Signed-off-by: Vivek Kasireddy <vivek.kasireddy@intel.com> >>> --- >>> tests/kms_addfb_basic.c | 9 +++++++++ >>> 1 file changed, 9 insertions(+) >>> >>> diff --git a/tests/kms_addfb_basic.c b/tests/kms_addfb_basic.c >>> index d466e4d..7ca1add 100644 >>> --- a/tests/kms_addfb_basic.c >>> +++ b/tests/kms_addfb_basic.c >>> @@ -373,6 +373,15 @@ static void addfb25_ytile(int fd, int gen) >>> f.handles[0] = gem_bo; >>> } >>> >>> + igt_subtest("addfb25-Y-tiled-X-modifier-mismatch") { >>> + igt_require(gen >= 9); >>> + igt_require_fb_modifiers(fd); >>> + gem_set_tiling(fd, gem_bo, I915_TILING_Y, 1024*4); >>> + >>> + f.modifier[0] = LOCAL_I915_FORMAT_MOD_X_TILED; >>> + igt_assert(drmIoctl(fd, >>> LOCAL_DRM_IOCTL_MODE_ADDFB2, &f) < 0 && errno == EINVAL); >>> + } >>> + >>> igt_subtest("addfb25-Y-tiled") { >>> igt_require_fb_modifiers(fd); >>> >> >> Wasn't the original WARN triggered by Y tiled object and Y fb >> modifier? > > Creating a new fb using a Y-tiled object and Y/X fb modifier will not > trigger the original WARN. It'll be triggered only if the fb is going > to be pinned -- and flipped. I am not sure how to get that WARN to be > triggered with the existing suite of igt tests. Ah yes, you would need to attempt display it, not even necessarily flip it. I am sure there are tests which do that. :) I know from recent activity kms_rotation_crc for example creates a Y tiled FB and displays it. So maybe borrow some code to start with from there. Regards, Tvrtko
On 08/10/15 09:55, Tvrtko Ursulin wrote: > On 07/10/15 22:07, Vivek Kasireddy wrote: >> >> Hi Tvrtko, >> >> On Wed, 7 Oct 2015 15:07:30 +0100 >> Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> wrote: >> >>> >>> Hi, >>> >>> On 07/10/15 03:35, Vivek Kasireddy wrote: >>>> This new subtest will validate a Y-tiled object's tiling mode >>>> against its associated fb modifier. >>>> >>>> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com> >>>> Signed-off-by: Vivek Kasireddy <vivek.kasireddy@intel.com> >>>> --- >>>> tests/kms_addfb_basic.c | 9 +++++++++ >>>> 1 file changed, 9 insertions(+) >>>> >>>> diff --git a/tests/kms_addfb_basic.c b/tests/kms_addfb_basic.c >>>> index d466e4d..7ca1add 100644 >>>> --- a/tests/kms_addfb_basic.c >>>> +++ b/tests/kms_addfb_basic.c >>>> @@ -373,6 +373,15 @@ static void addfb25_ytile(int fd, int gen) >>>> f.handles[0] = gem_bo; >>>> } >>>> >>>> + igt_subtest("addfb25-Y-tiled-X-modifier-mismatch") { >>>> + igt_require(gen >= 9); >>>> + igt_require_fb_modifiers(fd); >>>> + gem_set_tiling(fd, gem_bo, I915_TILING_Y, 1024*4); >>>> + >>>> + f.modifier[0] = LOCAL_I915_FORMAT_MOD_X_TILED; >>>> + igt_assert(drmIoctl(fd, >>>> LOCAL_DRM_IOCTL_MODE_ADDFB2, &f) < 0 && errno == EINVAL); >>>> + } >>>> + >>>> igt_subtest("addfb25-Y-tiled") { >>>> igt_require_fb_modifiers(fd); >>>> >>> >>> Wasn't the original WARN triggered by Y tiled object and Y fb >>> modifier? >> >> Creating a new fb using a Y-tiled object and Y/X fb modifier will not >> trigger the original WARN. It'll be triggered only if the fb is going >> to be pinned -- and flipped. I am not sure how to get that WARN to be >> triggered with the existing suite of igt tests. > > Ah yes, you would need to attempt display it, not even necessarily flip > it. I am sure there are tests which do that. :) I know from recent > activity kms_rotation_crc for example creates a Y tiled FB and displays > it. So maybe borrow some code to start with from there. Even better, kms_flip_tiling does the majority of what is needed here already. Just drop in a subtest which will do set_tiling and that should be good. Regards, Tvrtko
Hi Tvrtko, On Fri, 9 Oct 2015 09:34:25 +0100 Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> wrote: > > > On 08/10/15 09:55, Tvrtko Ursulin wrote: > > On 07/10/15 22:07, Vivek Kasireddy wrote: > >> > >> Hi Tvrtko, > >> > >> On Wed, 7 Oct 2015 15:07:30 +0100 > >> Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> wrote: > >> > >>> > >>> Hi, > >>> > >>> On 07/10/15 03:35, Vivek Kasireddy wrote: > >>>> This new subtest will validate a Y-tiled object's tiling mode > >>>> against its associated fb modifier. > >>>> > >>>> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com> > >>>> Signed-off-by: Vivek Kasireddy <vivek.kasireddy@intel.com> > >>>> --- > >>>> tests/kms_addfb_basic.c | 9 +++++++++ > >>>> 1 file changed, 9 insertions(+) > >>>> > >>>> diff --git a/tests/kms_addfb_basic.c b/tests/kms_addfb_basic.c > >>>> index d466e4d..7ca1add 100644 > >>>> --- a/tests/kms_addfb_basic.c > >>>> +++ b/tests/kms_addfb_basic.c > >>>> @@ -373,6 +373,15 @@ static void addfb25_ytile(int fd, int gen) > >>>> f.handles[0] = gem_bo; > >>>> } > >>>> > >>>> + igt_subtest("addfb25-Y-tiled-X-modifier-mismatch") { > >>>> + igt_require(gen >= 9); > >>>> + igt_require_fb_modifiers(fd); > >>>> + gem_set_tiling(fd, gem_bo, I915_TILING_Y, 1024*4); > >>>> + > >>>> + f.modifier[0] = LOCAL_I915_FORMAT_MOD_X_TILED; > >>>> + igt_assert(drmIoctl(fd, > >>>> LOCAL_DRM_IOCTL_MODE_ADDFB2, &f) < 0 && errno == EINVAL); > >>>> + } > >>>> + > >>>> igt_subtest("addfb25-Y-tiled") { > >>>> igt_require_fb_modifiers(fd); > >>>> > >>> > >>> Wasn't the original WARN triggered by Y tiled object and Y fb > >>> modifier? > >> > >> Creating a new fb using a Y-tiled object and Y/X fb modifier will > >> not trigger the original WARN. It'll be triggered only if the fb > >> is going to be pinned -- and flipped. I am not sure how to get > >> that WARN to be triggered with the existing suite of igt tests. > > > > Ah yes, you would need to attempt display it, not even necessarily > > flip it. I am sure there are tests which do that. :) I know from > > recent activity kms_rotation_crc for example creates a Y tiled FB > > and displays it. So maybe borrow some code to start with from there. > > Even better, kms_flip_tiling does the majority of what is needed here > already. Just drop in a subtest which will do set_tiling and that > should be good. Thank you for your suggestion. I am currently having problems with my hardware. After resolving these, I'll look into kms_flip_tiling and send out a patch soon. Thanks and Regards, Vivek > > Regards, > > Tvrtko > >
diff --git a/tests/kms_addfb_basic.c b/tests/kms_addfb_basic.c index d466e4d..7ca1add 100644 --- a/tests/kms_addfb_basic.c +++ b/tests/kms_addfb_basic.c @@ -373,6 +373,15 @@ static void addfb25_ytile(int fd, int gen) f.handles[0] = gem_bo; } + igt_subtest("addfb25-Y-tiled-X-modifier-mismatch") { + igt_require(gen >= 9); + igt_require_fb_modifiers(fd); + gem_set_tiling(fd, gem_bo, I915_TILING_Y, 1024*4); + + f.modifier[0] = LOCAL_I915_FORMAT_MOD_X_TILED; + igt_assert(drmIoctl(fd, LOCAL_DRM_IOCTL_MODE_ADDFB2, &f) < 0 && errno == EINVAL); + } + igt_subtest("addfb25-Y-tiled") { igt_require_fb_modifiers(fd);
This new subtest will validate a Y-tiled object's tiling mode against its associated fb modifier. Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Signed-off-by: Vivek Kasireddy <vivek.kasireddy@intel.com> --- tests/kms_addfb_basic.c | 9 +++++++++ 1 file changed, 9 insertions(+)