From: "Souza, Jose" <jose.souza@intel.com>
To: "igt-dev@lists.freedesktop.org" <igt-dev@lists.freedesktop.org>,
"Pandiyan, Dhinakaran" <dhinakaran.pandiyan@intel.com>
Cc: "Vivi, Rodrigo" <rodrigo.vivi@intel.com>
Subject: Re: [igt-dev] [PATCH i-g-t v2 3/8] tests/fbcon_fbt: Add wait_until_update() callback to features
Date: Wed, 10 Apr 2019 20:31:42 +0000 [thread overview]
Message-ID: <d169656121aaa1fdb0450569ae59a90f31663c25.camel@intel.com> (raw)
In-Reply-To: <7072ad27249640cedf321b6a851fd2a882572165.camel@intel.com>
[-- Attachment #1.1: Type: text/plain, Size: 4082 bytes --]
On Tue, 2019-04-09 at 14:41 -0700, Dhinakaran Pandiyan wrote:
> On Wed, 2019-03-27 at 13:03 -0700, José Roberto de Souza wrote:
> > Lets be more explicit and add and implement a callback to check if
> > feature had a state update, that is what some points of the test
> > want
> > to test.
> >
> > Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
> > Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
> > Cc: Paulo Zanoni <paulo.r.zanoni@intel.com>
> > Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
> > ---
> > tests/kms_fbcon_fbt.c | 19 ++++++++++++++++---
> > 1 file changed, 16 insertions(+), 3 deletions(-)
> >
> > diff --git a/tests/kms_fbcon_fbt.c b/tests/kms_fbcon_fbt.c
> > index a9d91839..9ab1d630 100644
> > --- a/tests/kms_fbcon_fbt.c
> > +++ b/tests/kms_fbcon_fbt.c
> > @@ -130,6 +130,11 @@ static bool fbc_wait_until_enabled(int
> > debugfs_fd)
> > return r;
> > }
> >
> > +static bool fbc_wait_until_update(int debugfs)
> > +{
> > + return !fbc_wait_until_enabled(debugfs);
> > +}
> > +
> > typedef bool (*connector_possible_fn)(drmModeConnectorPtr
> > connector);
> >
> > static void set_mode_for_one_screen(struct drm_info *drm, struct
> > igt_fb *fb,
> > @@ -196,6 +201,11 @@ static bool psr_supported_on_chipset(int
> > debugfs_fd)
> > return psr_sink_support(debugfs_fd, PSR_MODE_1);
> > }
> >
> > +static bool psr_wait_until_update(int debugfs_fd)
> > +{
> > + return !psr_wait_until_enabled(debugfs_fd);
> > +}
> > +
> > static void disable_features(int debugfs_fd)
> > {
> > igt_set_module_param_int("enable_fbc", 0);
> > @@ -215,16 +225,19 @@ static inline void psr_debugfs_enable(int
> > debugfs_fd)
> > struct feature {
> > bool (*supported_on_chipset)(int debugfs_fd);
> > bool (*wait_until_enabled)(int debugfs_fd);
> > + bool (*wait_until_update)(int debugfs_fd);
> > bool (*connector_possible_fn)(drmModeConnectorPtr connector);
> > void (*enable)(int debugfs_fd);
> > } fbc = {
> > .supported_on_chipset = fbc_supported_on_chipset,
> > .wait_until_enabled = fbc_wait_until_enabled,
> > + .wait_until_update = fbc_wait_until_update,
> > .connector_possible_fn = connector_can_fbc,
> > .enable = fbc_modparam_enable,
> > }, psr = {
> > .supported_on_chipset = psr_supported_on_chipset,
> > .wait_until_enabled = psr_wait_until_enabled,
> > + .wait_until_update = psr_wait_until_update,
> > .connector_possible_fn = connector_can_psr,
> > .enable = psr_debugfs_enable,
> > };
> > @@ -243,7 +256,7 @@ static void subtest(struct feature *feature,
> > bool suspend)
> >
> > kmstest_unset_all_crtcs(drm.fd, drm.res);
> > wait_user("Modes unset.");
> > - igt_assert(!feature->wait_until_enabled(drm.debugfs_fd));
> > + igt_assert(feature->wait_until_update(drm.debugfs_fd));
> I believe the intention here is to test if PSR and FBC got disabled
> when pipes
> are disabled.
Yeah, here pipes will be disable so all the features, so here should we
keep: igt_assert(!feature->wait_until_enabled(drm.debugfs_fd));
>
> >
> > set_mode_for_one_screen(&drm, &fb, feature-
> > >connector_possible_fn);
> > wait_user("Screen set.");
> > @@ -263,13 +276,13 @@ static void subtest(struct feature *feature,
> > bool
> > suspend)
> > sleep(3);
> >
> > wait_user("Back to fbcon.");
> > - igt_assert(!feature->wait_until_enabled(drm.debugfs_fd));
> > + igt_assert(feature->wait_until_update(drm.debugfs_fd));
> >
> And here, I believe the expectation is that fbcon leads to
> frontbuffer
> invalidate and thus disabling PSR and FBC.
It will disable PSR while doing the full modeset but in fbcon PSR will
be enabled between cursor blinks, that is why we need to check for
update here.
>
> > if (suspend) {
> > igt_system_suspend_autoresume(SUSPEND_STATE_MEM,
> > SUSPEND_TEST_NONE);
> > sleep(5);
> > - igt_assert(!feature-
> > >wait_until_enabled(drm.debugfs_fd));
> > + igt_assert(feature->wait_until_update(drm.debugfs_fd));
> > }
> > }
> >
[-- Attachment #1.2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
[-- Attachment #2: Type: text/plain, Size: 153 bytes --]
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
next prev parent reply other threads:[~2019-04-10 20:32 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-03-27 20:03 [igt-dev] [PATCH i-g-t v2 1/8] tests/fbcon_fbt: Use psr_wait_entry() to wait PSR be enabled José Roberto de Souza
2019-03-27 20:03 ` [igt-dev] [PATCH i-g-t v2 2/8] tests/fbcon_fbt: Allow fbcon to bind when running this test José Roberto de Souza
2019-03-27 20:03 ` [igt-dev] [PATCH i-g-t v2 3/8] tests/fbcon_fbt: Add wait_until_update() callback to features José Roberto de Souza
2019-04-09 21:41 ` Dhinakaran Pandiyan
2019-04-10 20:31 ` Souza, Jose [this message]
2019-04-10 20:42 ` Pandiyan, Dhinakaran
2019-04-10 22:04 ` Souza, Jose
2019-03-27 20:03 ` [igt-dev] [PATCH i-g-t v2 4/8] tests/fbcon_fbt: Use psr_wait_update() to test updates in PSR José Roberto de Souza
2019-03-27 20:03 ` [igt-dev] [PATCH i-g-t v2 5/8] tests/fbcon_fbt: Add and use psr_long_wait_update() " José Roberto de Souza
2019-04-09 17:55 ` Maarten Lankhorst
2019-04-10 21:08 ` Souza, Jose
2019-03-27 20:03 ` [igt-dev] [PATCH i-g-t v2 6/8] tests/fbcon_fbt: Enable cursor blinking José Roberto de Souza
2019-04-09 17:59 ` Maarten Lankhorst
2019-03-27 20:03 ` [igt-dev] [PATCH i-g-t v2 7/8] tests/fbcon_fbt: Do not try to open the same driver twice as master José Roberto de Souza
2019-04-09 17:55 ` Maarten Lankhorst
2019-04-10 21:07 ` Souza, Jose
2019-03-27 20:03 ` [igt-dev] [PATCH i-g-t v2 8/8] tests/fbcon_fbt: Do not keep opening debugfs_fd at every setup_drm() call José Roberto de Souza
2019-04-09 18:01 ` Maarten Lankhorst
2019-03-27 21:01 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,v2,1/8] tests/fbcon_fbt: Use psr_wait_entry() to wait PSR be enabled Patchwork
2019-03-28 17:44 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=d169656121aaa1fdb0450569ae59a90f31663c25.camel@intel.com \
--to=jose.souza@intel.com \
--cc=dhinakaran.pandiyan@intel.com \
--cc=igt-dev@lists.freedesktop.org \
--cc=rodrigo.vivi@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox