diff options
| author | Daniel Vetter <daniel.vetter@ffwll.ch> | 2017-02-26 15:34:42 -0500 |
|---|---|---|
| committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2017-02-26 15:34:42 -0500 |
| commit | 8e22e1b3499a446df48c2b26667ca36c55bf864c (patch) | |
| tree | 5329f98b3eb3c95a9dcbab0fa4f9b6e62f0e788d /drivers/gpu/drm/nouveau/include/nvkm/subdev/secboot.h | |
| parent | 00d3c14f14d51babd8aeafd5fa734ccf04f5ca3d (diff) | |
| parent | 64a577196d66b44e37384bc5c4d78c61f59d5b2a (diff) | |
Merge airlied/drm-next into drm-misc-next
Backmerge the main pull request to sync up with all the newly landed
drivers. Otherwise we'll have chaos even before 4.12 started in
earnest.
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Diffstat (limited to 'drivers/gpu/drm/nouveau/include/nvkm/subdev/secboot.h')
| -rw-r--r-- | drivers/gpu/drm/nouveau/include/nvkm/subdev/secboot.h | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/drivers/gpu/drm/nouveau/include/nvkm/subdev/secboot.h b/drivers/gpu/drm/nouveau/include/nvkm/subdev/secboot.h index b04c38c07761..5dbd8aa4f8c2 100644 --- a/drivers/gpu/drm/nouveau/include/nvkm/subdev/secboot.h +++ b/drivers/gpu/drm/nouveau/include/nvkm/subdev/secboot.h | |||
| @@ -26,7 +26,7 @@ | |||
| 26 | #include <core/subdev.h> | 26 | #include <core/subdev.h> |
| 27 | 27 | ||
| 28 | enum nvkm_secboot_falcon { | 28 | enum nvkm_secboot_falcon { |
| 29 | NVKM_SECBOOT_FALCON_PMU = 0, | 29 | NVKM_SECBOOT_FALCON_PMU = 0, |
| 30 | NVKM_SECBOOT_FALCON_RESERVED = 1, | 30 | NVKM_SECBOOT_FALCON_RESERVED = 1, |
| 31 | NVKM_SECBOOT_FALCON_FECS = 2, | 31 | NVKM_SECBOOT_FALCON_FECS = 2, |
| 32 | NVKM_SECBOOT_FALCON_GPCCS = 3, | 32 | NVKM_SECBOOT_FALCON_GPCCS = 3, |
| @@ -35,22 +35,23 @@ enum nvkm_secboot_falcon { | |||
| 35 | }; | 35 | }; |
| 36 | 36 | ||
| 37 | /** | 37 | /** |
| 38 | * @base: base IO address of the falcon performing secure boot | 38 | * @wpr_set: whether the WPR region is currently set |
| 39 | * @irq_mask: IRQ mask of the falcon performing secure boot | ||
| 40 | * @enable_mask: enable mask of the falcon performing secure boot | ||
| 41 | */ | 39 | */ |
| 42 | struct nvkm_secboot { | 40 | struct nvkm_secboot { |
| 43 | const struct nvkm_secboot_func *func; | 41 | const struct nvkm_secboot_func *func; |
| 42 | struct nvkm_acr *acr; | ||
| 44 | struct nvkm_subdev subdev; | 43 | struct nvkm_subdev subdev; |
| 44 | struct nvkm_falcon *boot_falcon; | ||
| 45 | 45 | ||
| 46 | enum nvkm_devidx devidx; | 46 | u64 wpr_addr; |
| 47 | u32 base; | 47 | u32 wpr_size; |
| 48 | |||
| 49 | bool wpr_set; | ||
| 48 | }; | 50 | }; |
| 49 | #define nvkm_secboot(p) container_of((p), struct nvkm_secboot, subdev) | 51 | #define nvkm_secboot(p) container_of((p), struct nvkm_secboot, subdev) |
| 50 | 52 | ||
| 51 | bool nvkm_secboot_is_managed(struct nvkm_secboot *, enum nvkm_secboot_falcon); | 53 | bool nvkm_secboot_is_managed(struct nvkm_secboot *, enum nvkm_secboot_falcon); |
| 52 | int nvkm_secboot_reset(struct nvkm_secboot *, u32 falcon); | 54 | int nvkm_secboot_reset(struct nvkm_secboot *, enum nvkm_secboot_falcon); |
| 53 | int nvkm_secboot_start(struct nvkm_secboot *, u32 falcon); | ||
| 54 | 55 | ||
| 55 | int gm200_secboot_new(struct nvkm_device *, int, struct nvkm_secboot **); | 56 | int gm200_secboot_new(struct nvkm_device *, int, struct nvkm_secboot **); |
| 56 | int gm20b_secboot_new(struct nvkm_device *, int, struct nvkm_secboot **); | 57 | int gm20b_secboot_new(struct nvkm_device *, int, struct nvkm_secboot **); |
