[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20190220155124.25022-1-paul.kocialkowski@bootlin.com>
Date: Wed, 20 Feb 2019 16:51:21 +0100
From: Paul Kocialkowski <paul.kocialkowski@...tlin.com>
To: dri-devel@...ts.freedesktop.org, linux-kernel@...r.kernel.org
Cc: Eric Anholt <eric@...olt.net>, David Airlie <airlied@...ux.ie>,
Daniel Vetter <daniel@...ll.ch>,
Thomas Petazzoni <thomas.petazzoni@...tlin.com>,
Maxime Ripard <maxime.ripard@...tlin.com>,
Eben Upton <eben@...pberrypi.org>,
Paul Kocialkowski <paul.kocialkowski@...tlin.com>
Subject: [PATCH v5 0/3] drm/vc4: Add a load tracker
Hi,
Here is a fourth iteration of the VC4 load tracking series, which was
initially developed by Boris Brezillon and that I have now taken over.
This new iteration takes in account comments from v3 and comes with a
new approach for avoiding underrun reports when reconfiguring the
pipeline. It is now based on detection instead of delaying the underrun
interrupt unmasking.
It can be tested with a dedicated IGT GPU Tools series:
VC4 load tracker testing
Changes since v4:
* Unmasked underrun in vc4_crtc_handle_page_flip instead of the previous
workaround for detecting out-of-sync display lists causing underruns;
* Added comments where it felt relevant;
* Made underrun masking/unmasking per-channel to avoid race conditions
resulting in unwanted masking/unmasking;
* Added a check for unmasked interrupt before acting upon it;
* Disabled shortline/underrun interrupts at initial config time;
* Added collected Reviewed-by tags.
Changes since v3:
* Returned IRQ_NONE for short line interrupt to avoid storm;
* Made register definitions with per-channel offsets more direct;
* cleaned all IRQ fields instead of writing back the status bit as
advised by docs;
* Reworked first commit's message;
* Removed in-commit changelogs with inconsistent revision numbers;
* Removed explicit wait for sync before unmasking underrun interrupt;
* Checked that the display lists are synced before reporting underrun;
Cheers,
Paul
Boris Brezillon (2):
drm/vc4: Report HVS underrun errors
drm/vc4: Add a load tracker to prevent HVS underflow errors
Paul Kocialkowski (1):
drm/vc4: Add a debugfs entry to disable/enable the load tracker
drivers/gpu/drm/vc4/vc4_crtc.c | 8 ++
drivers/gpu/drm/vc4/vc4_debugfs.c | 10 +++
drivers/gpu/drm/vc4/vc4_drv.c | 1 +
drivers/gpu/drm/vc4/vc4_drv.h | 24 ++++++
drivers/gpu/drm/vc4/vc4_hvs.c | 95 +++++++++++++++++++++++
drivers/gpu/drm/vc4/vc4_kms.c | 122 +++++++++++++++++++++++++++++-
drivers/gpu/drm/vc4/vc4_plane.c | 57 ++++++++++++++
drivers/gpu/drm/vc4/vc4_regs.h | 51 ++++---------
8 files changed, 332 insertions(+), 36 deletions(-)
--
2.20.1
Powered by blists - more mailing lists