diff options
author | Mikko Perttunen <mperttunen@nvidia.com> | 2017-09-28 15:50:39 +0300 |
---|---|---|
committer | Thierry Reding <treding@nvidia.com> | 2017-10-20 14:19:52 +0200 |
commit | c3f52220f276504dea5615cc78750ddc9f468389 (patch) | |
tree | 678205dfba02670263243686112a7da609fc2e5c /drivers/gpu/host1x/hw/channel_hw.c | |
parent | 2fb0dceb69ce957f01bdb6fddf7baf4c4b9cbc0d (diff) | |
download | linux-c3f52220f276504dea5615cc78750ddc9f468389.tar.bz2 |
gpu: host1x: Enable Tegra186 syncpoint protection
Since Tegra186 the Host1x hardware allows syncpoints to be assigned to
specific channels, preventing any other channels from incrementing
them.
Enable this feature where available and assign syncpoints to channels
when submitting a job. Syncpoints are currently never unassigned from
channels since that would require extra work and is unnecessary with
the current channel allocation model.
Signed-off-by: Mikko Perttunen <mperttunen@nvidia.com>
Reviewed-by: Dmitry Osipenko <digetx@gmail.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Diffstat (limited to 'drivers/gpu/host1x/hw/channel_hw.c')
-rw-r--r-- | drivers/gpu/host1x/hw/channel_hw.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/gpu/host1x/hw/channel_hw.c b/drivers/gpu/host1x/hw/channel_hw.c index 8447a56c41ca..1d3e9bdde2ce 100644 --- a/drivers/gpu/host1x/hw/channel_hw.c +++ b/drivers/gpu/host1x/hw/channel_hw.c @@ -147,6 +147,8 @@ static int channel_submit(struct host1x_job *job) syncval = host1x_syncpt_incr_max(sp, user_syncpt_incrs); + host1x_hw_syncpt_assign_to_channel(host, sp, ch); + job->syncpt_end = syncval; /* add a setclass for modules that require it */ |