public inbox for igt-dev@lists.freedesktop.org
 help / color / mirror / Atom feed
From: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
To: "José Roberto de Souza" <jose.souza@intel.com>,
	igt-dev@lists.freedesktop.org
Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>,
	Rodrigo Vivi <rodrigo.vivi@intel.com>
Subject: Re: [igt-dev] [PATCH i-g-t v2 6/8] tests/fbcon_fbt: Enable cursor blinking
Date: Tue, 9 Apr 2019 19:59:55 +0200	[thread overview]
Message-ID: <0dfde64d-a8d9-bd0e-0e4f-e85aa22fcfa8@linux.intel.com> (raw)
In-Reply-To: <20190327200331.28602-6-jose.souza@intel.com>

Op 27-03-2019 om 21:03 schreef José Roberto de Souza:
> If cursor blinking is disabled no screen updates will happen and
> fbcon_fbt subtests will fail, so lets enable cursor blink while
> running this test and restore to the previous value when exiting it.
>
> Cc: Paulo Zanoni <paulo.r.zanoni@intel.com>
> Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
> Cc: Chris Wilson <chris@chris-wilson.co.uk>
> Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
> ---
>  lib/igt_sysfs.c       | 46 +++++++++++++++++++++++++++++++++++++++++++
>  lib/igt_sysfs.h       |  1 +
>  tests/kms_fbcon_fbt.c |  1 +
>  3 files changed, 48 insertions(+)
>
> diff --git a/lib/igt_sysfs.c b/lib/igt_sysfs.c
> index f806f4fc..904fbd17 100644
> --- a/lib/igt_sysfs.c
> +++ b/lib/igt_sysfs.c
> @@ -610,3 +610,49 @@ void kick_snd_hda_intel(void)
>  out:
>  	close(fd);
>  }
> +
> +static int fbcon_blink_restore_debugfs_fd = -1;
> +static uint8_t fbcon_blink_restore_value;
> +
> +static void fbcon_blink_restore(int sig)
> +{
> +	char buffer[4];
> +	int r;
> +
> +	r = snprintf(buffer, sizeof(buffer), "%u", fbcon_blink_restore_value);
> +	write(fbcon_blink_restore_debugfs_fd, buffer, r + 1);
> +}
> +
> +/**
> + * fbcon_blink_enable:
> + * @enable: if true enables the fbcon cursor blinking otherwise disables it
> + *
> + * Enables or disables the cursor blinking in fbcon, it also restores the
> + * previous blinking state when exiting test.
> + *
> + */
> +void fbcon_blink_enable(bool enable)
> +{
> +	const char *cur_blink_path = "/sys/class/graphics/fbcon/cursor_blink";
> +	char buffer[4];
> +	int fd, r;
> +
> +	fd = open(cur_blink_path, O_RDWR);
> +	igt_assert(fd >= 0);
> +
> +	/* Restore original value on exit */
> +	if (fbcon_blink_restore_debugfs_fd == -1) {
> +		r = read(fd, buffer, sizeof(buffer));
> +		if (r > 0) {
> +			fbcon_blink_restore_value = (uint8_t)strtol(buffer,
> +								    NULL, 10);
> +			fbcon_blink_restore_debugfs_fd = dup(fd);
> +			igt_assert(fbcon_blink_restore_debugfs_fd >= 0);
> +			igt_install_exit_handler(fbcon_blink_restore);
> +		}
> +	}
> +
> +	r = snprintf(buffer, sizeof(buffer), enable ? "1" : "0");
> +	write(fd, buffer, r + 1);
> +	close(fd);
> +}


This looks like it will work, but is it also possible to write to the console to explicitly update it to make it more explicit?

Either way is fine with me.

~Maarten

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

  reply	other threads:[~2019-04-09 18:00 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
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 [this message]
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=0dfde64d-a8d9-bd0e-0e4f-e85aa22fcfa8@linux.intel.com \
    --to=maarten.lankhorst@linux.intel.com \
    --cc=dhinakaran.pandiyan@intel.com \
    --cc=igt-dev@lists.freedesktop.org \
    --cc=jose.souza@intel.com \
    --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