[igt-dev] [PATCH i-g-t] lib/psr: Fix skips on kms_frontbuffer_tracking on !PSR capable platforms.
Souza, Jose
jose.souza at intel.com
Mon Jan 28 23:08:59 UTC 2019
On Mon, 2019-01-28 at 13:50 +0100, Maarten Lankhorst wrote:
> We unconditionally call psr_disable in kms_frontbuffer_tracking,
> which
> causes a skipping of all tests on PSR incapable platforms. Use a
> proper
> int in psr_set() and use -1 to denote disable.
The call to disable_features() is the one causing problems? Could share
one report with this problem?
If this is the case would not be easier just do this?
static bool disable_features(const struct test_mode *t)
{
bool ret = true;
if (t->feature == FEATURE_DEFAULT)
return false;
fbc_disable();
drrs_disable();
if (psr.can_test)
ret = psr_disable(drm.debugfs);
return ret;
}
>
> Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan at intel.com>
> Cc: José Roberto de Souza <jose.souza at intel.com>
> Signed-off-by: Maarten Lankhorst <maarten.lankhorst at linux.intel.com>
> ---
> lib/igt_psr.c | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/lib/igt_psr.c b/lib/igt_psr.c
> index d726fad58e9d..5eb6d2c6ace5 100644
> --- a/lib/igt_psr.c
> +++ b/lib/igt_psr.c
> @@ -100,13 +100,13 @@ static void restore_psr_debugfs(int sig)
> psr_write(psr_restore_debugfs_fd, "0");
> }
>
> -static bool psr_set(int debugfs_fd, enum psr_mode mode)
> +static bool psr_set(int debugfs_fd, int mode)
> {
> int ret;
>
> ret = has_psr_debugfs(debugfs_fd);
> if (ret == -ENODEV) {
> - igt_skip("PSR not available\n");
> + igt_skip_on_f(mode >= PSR_MODE_1, "PSR not
> available\n");
> return false;
> }
>
> @@ -117,7 +117,7 @@ static bool psr_set(int debugfs_fd, enum psr_mode
> mode)
> * version enabled and the PSR version of the test, it
> will
> * fail in the first psr_wait_entry() of the test.
> */
> - ret = psr_modparam_set(mode <= PSR_MODE_2);
> + ret = psr_modparam_set(mode >= PSR_MODE_1);
> } else {
> const char *debug_val;
>
> @@ -155,7 +155,7 @@ bool psr_enable(int debugfs_fd, enum psr_mode
> mode)
> bool psr_disable(int debugfs_fd)
> {
> /* Any mode different than PSR_MODE_1/2 will disable PSR */
> - return psr_set(debugfs_fd, PSR_MODE_2 + 1);
> + return psr_set(debugfs_fd, -1);
> }
>
> bool psr_sink_support(int debugfs_fd, enum psr_mode mode)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: This is a digitally signed message part
URL: <https://lists.freedesktop.org/archives/igt-dev/attachments/20190128/a896b8e5/attachment.sig>
More information about the igt-dev
mailing list