summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/include
diff options
context:
space:
mode:
authorMahantesh Kumbar <mkumbar@nvidia.com>2017-10-04 10:11:04 -0400
committermobile promotions <svcmobile_promotions@nvidia.com>2017-10-21 20:34:34 -0400
commit2904e3ac0081d4e898378f6ba667658c85547368 (patch)
tree856be258a7c213c8f03179218e2111bf8bc6e6bf /drivers/gpu/nvgpu/include
parent324cf7b49e83f9641fde7ba97958b085da615d78 (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.h36
-rw-r--r--drivers/gpu/nvgpu/include/nvgpu/hw/gv100/hw_mc_gv100.h8
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}
463static inline u32 fb_mmu_vpr_info_index_f(u32 v)
464{
465 return (v & 0x3U) << 0U;
466}
467static inline u32 fb_mmu_vpr_info_index_v(u32 r)
468{
469 return (r >> 0U) & 0x3U;
470}
471static inline u32 fb_mmu_vpr_info_index_m(void)
472{
473 return 0x3U << 0U;
474}
475static inline u32 fb_mmu_vpr_info_index_addr_lo_v(void)
476{
477 return 0x00000000U;
478}
479static inline u32 fb_mmu_vpr_info_index_addr_hi_v(void)
480{
481 return 0x00000001U;
482}
483static inline u32 fb_mmu_vpr_info_index_cya_lo_v(void)
484{
485 return 0x00000002U;
486}
487static inline u32 fb_mmu_vpr_info_index_cya_hi_v(void)
488{
489 return 0x00000003U;
490}
491static inline u32 fb_mmu_vpr_info_cya_lo_in_use_m(void)
492{
493 return 0x1U << 4U;
494}
495static inline u32 fb_mmu_vpr_info_fetch_f(u32 v)
496{
497 return (v & 0x1U) << 2U;
498}
463static inline u32 fb_mmu_vpr_info_fetch_v(u32 r) 499static 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}
199static inline u32 mc_enable_nvdec_disabled_v(void)
200{
201 return 0x00000000U;
202}
203static inline u32 mc_enable_nvdec_enabled_f(void)
204{
205 return 0x8000U;
206}
199static inline u32 mc_intr_ltc_r(void) 207static inline u32 mc_intr_ltc_r(void)
200{ 208{
201 return 0x000001c0U; 209 return 0x000001c0U;