drm/tegra: vic: Support stream ID register programming
authorThierry Reding <treding@nvidia.com>
Fri, 1 Feb 2019 13:28:36 +0000 (14:28 +0100)
committerThierry Reding <treding@nvidia.com>
Thu, 7 Feb 2019 17:29:01 +0000 (18:29 +0100)
commitf3779cb190a5a12d2e26fd5af724fb1384a9144f
tree4e8e5ac72c7d1ca5fbbe54c6d86a630e46db7741
parent3ff41673d5c6842e6668f95b0a14e5f6a74d043f
drm/tegra: vic: Support stream ID register programming

The version of VIC found in Tegra186 and later incorporates improvements
with regards to context isolation. As part of those improvements, stream
ID registers were added that allow to specify separate stream IDs for
the Falcon microcontroller and the VIC memory interface.

While it is possible to also set the stream ID dynamically at runtime to
allow userspace contexts to be completely separated, this commit doesn't
implement that yet. Instead, the static VIC stream ID is programmed when
the Falcon is booted. This ensures that memory accesses by the Falcon or
the VIC are properly translated via the SMMU.

Signed-off-by: Thierry Reding <treding@nvidia.com>
drivers/gpu/drm/tegra/vic.c
drivers/gpu/drm/tegra/vic.h