summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/nouveau/nvkm/subdev/pmu/base.c
diff options
context:
space:
mode:
authorAlexandre Courbot <acourbot@nvidia.com>2016-12-13 11:11:19 +0300
committerBen Skeggs <bskeggs@redhat.com>2017-02-17 08:14:30 +0300
commit31214108ad08766075bf111df90c1f26520b0159 (patch)
treef3f593340f0e794464e81c1b9887ba21399f96bd /drivers/gpu/drm/nouveau/nvkm/subdev/pmu/base.c
parentc599dd4b70d3d8a485be6b80d8b190beb3df874b (diff)
downloadlinux-31214108ad08766075bf111df90c1f26520b0159.tar.xz
drm/nouveau/core: add falcon library functions
Falcon processors are used in various places of GPU chips. Although there exist different versions of the falcon, and some variants exist, the base set of actions performed on them is the same, which results in lots of duplicated code. This patch consolidates the current nvkm_falcon structure and extends it with the following features: * Ability for an engine to obtain and later release a given falcon, * Abstractions for basic operations (IMEM/DMEM access, start, etc) * Abstractions for secure operations if a falcon is secure Abstractions make it easy to e.g. start a falcon, without having to care about its details. For instance, falcons in secure mode need to be started by writing to a different register. Right now the abstractions variants only cover secure vs. non-secure falcon, but more will come as e.g. SEC2 support is added. This is still a WIP as other functions previously done by engine/falcon.c need to be reimplemented. However this first step allows to keep things simple and to discuss basic design. Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/nouveau/nvkm/subdev/pmu/base.c')
0 files changed, 0 insertions, 0 deletions