diff options
author | Mahantesh Kumbar <mkumbar@nvidia.com> | 2017-10-04 10:11:04 -0400 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2017-10-21 20:34:34 -0400 |
commit | 2904e3ac0081d4e898378f6ba667658c85547368 (patch) | |
tree | 856be258a7c213c8f03179218e2111bf8bc6e6bf /drivers/gpu/nvgpu/include | |
parent | 324cf7b49e83f9641fde7ba97958b085da615d78 (diff) |
gpu: nvgpu: gv100 memory unlock support
- Added method to load mem unlock binary into
nvdec falcon & execute to perform mem unlock
if VPR enabled.
- Updated .mem_unlock gv100 HAL to point
method gv100_fb_memory_unlock().
- Updated .mem_unlock gv11b HAL to NULL.
- Added vpr info hw registers
- Added nvdec enable hw register
Change-Id: Ia4bf820ae103baede679d300d1d390fd748c919a
Signed-off-by: Mahantesh Kumbar <mkumbar@nvidia.com>
(cherry picked from commit 2e176ad9d47316bf4d001692a2ae07e6c1fb1ccb)
Reviewed-on: https://git-master.nvidia.com/r/1573101
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/include')
-rw-r--r-- | drivers/gpu/nvgpu/include/nvgpu/hw/gv100/hw_fb_gv100.h | 36 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/include/nvgpu/hw/gv100/hw_mc_gv100.h | 8 |
2 files changed, 44 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/include/nvgpu/hw/gv100/hw_fb_gv100.h b/drivers/gpu/nvgpu/include/nvgpu/hw/gv100/hw_fb_gv100.h index 3bba3fb8..a4fcd1e6 100644 --- a/drivers/gpu/nvgpu/include/nvgpu/hw/gv100/hw_fb_gv100.h +++ b/drivers/gpu/nvgpu/include/nvgpu/hw/gv100/hw_fb_gv100.h | |||
@@ -460,6 +460,42 @@ static inline u32 fb_mmu_vpr_info_r(void) | |||
460 | { | 460 | { |
461 | return 0x00100cd0U; | 461 | return 0x00100cd0U; |
462 | } | 462 | } |
463 | static inline u32 fb_mmu_vpr_info_index_f(u32 v) | ||
464 | { | ||
465 | return (v & 0x3U) << 0U; | ||
466 | } | ||
467 | static inline u32 fb_mmu_vpr_info_index_v(u32 r) | ||
468 | { | ||
469 | return (r >> 0U) & 0x3U; | ||
470 | } | ||
471 | static inline u32 fb_mmu_vpr_info_index_m(void) | ||
472 | { | ||
473 | return 0x3U << 0U; | ||
474 | } | ||
475 | static inline u32 fb_mmu_vpr_info_index_addr_lo_v(void) | ||
476 | { | ||
477 | return 0x00000000U; | ||
478 | } | ||
479 | static inline u32 fb_mmu_vpr_info_index_addr_hi_v(void) | ||
480 | { | ||
481 | return 0x00000001U; | ||
482 | } | ||
483 | static inline u32 fb_mmu_vpr_info_index_cya_lo_v(void) | ||
484 | { | ||
485 | return 0x00000002U; | ||
486 | } | ||
487 | static inline u32 fb_mmu_vpr_info_index_cya_hi_v(void) | ||
488 | { | ||
489 | return 0x00000003U; | ||
490 | } | ||
491 | static inline u32 fb_mmu_vpr_info_cya_lo_in_use_m(void) | ||
492 | { | ||
493 | return 0x1U << 4U; | ||
494 | } | ||
495 | static inline u32 fb_mmu_vpr_info_fetch_f(u32 v) | ||
496 | { | ||
497 | return (v & 0x1U) << 2U; | ||
498 | } | ||
463 | static inline u32 fb_mmu_vpr_info_fetch_v(u32 r) | 499 | static inline u32 fb_mmu_vpr_info_fetch_v(u32 r) |
464 | { | 500 | { |
465 | return (r >> 2U) & 0x1U; | 501 | return (r >> 2U) & 0x1U; |
diff --git a/drivers/gpu/nvgpu/include/nvgpu/hw/gv100/hw_mc_gv100.h b/drivers/gpu/nvgpu/include/nvgpu/hw/gv100/hw_mc_gv100.h index 2efeac79..f367991e 100644 --- a/drivers/gpu/nvgpu/include/nvgpu/hw/gv100/hw_mc_gv100.h +++ b/drivers/gpu/nvgpu/include/nvgpu/hw/gv100/hw_mc_gv100.h | |||
@@ -196,6 +196,14 @@ static inline u32 mc_enable_hub_enabled_f(void) | |||
196 | { | 196 | { |
197 | return 0x20000000U; | 197 | return 0x20000000U; |
198 | } | 198 | } |
199 | static inline u32 mc_enable_nvdec_disabled_v(void) | ||
200 | { | ||
201 | return 0x00000000U; | ||
202 | } | ||
203 | static inline u32 mc_enable_nvdec_enabled_f(void) | ||
204 | { | ||
205 | return 0x8000U; | ||
206 | } | ||
199 | static inline u32 mc_intr_ltc_r(void) | 207 | static inline u32 mc_intr_ltc_r(void) |
200 | { | 208 | { |
201 | return 0x000001c0U; | 209 | return 0x000001c0U; |