diff options
author | Mikko Perttunen <mperttunen@nvidia.com> | 2021-03-29 16:38:34 +0300 |
---|---|---|
committer | Thierry Reding <treding@nvidia.com> | 2021-03-31 18:42:13 +0300 |
commit | f5ba33fb9690566c382624637125827b5512e766 (patch) | |
tree | aac07e40146af90f707f7d6345fe628ed1fa677d /drivers/gpu/drm | |
parent | aded42ada6eacfa11d349b158e993f66e4741aa7 (diff) | |
download | linux-f5ba33fb9690566c382624637125827b5512e766.tar.xz |
gpu: host1x: Reserve VBLANK syncpoints at initialization
On T20-T148 chips, the bootloader can set up a boot splash
screen with DC configured to increment syncpoint 26/27
at VBLANK. Because of this we shouldn't allow these syncpoints
to be allocated until DC has been reset and will no longer
increment them in the background.
As such, on these chips, reserve those two syncpoints at
initialization, and only mark them free once the DC
driver has indicated it's safe to do so.
Signed-off-by: Mikko Perttunen <mperttunen@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Diffstat (limited to 'drivers/gpu/drm')
-rw-r--r-- | drivers/gpu/drm/tegra/dc.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/gpu/drm/tegra/dc.c b/drivers/gpu/drm/tegra/dc.c index cfda71e151cc..40bf8f33a2ae 100644 --- a/drivers/gpu/drm/tegra/dc.c +++ b/drivers/gpu/drm/tegra/dc.c @@ -2046,6 +2046,12 @@ static int tegra_dc_init(struct host1x_client *client) int err; /* + * DC has been reset by now, so VBLANK syncpoint can be released + * for general use. + */ + host1x_syncpt_release_vblank_reservation(client, 26 + dc->pipe); + + /* * XXX do not register DCs with no window groups because we cannot * assign a primary plane to them, which in turn will cause KMS to * crash. |