diff options
author | Terje Bergstrom <tbergstrom@nvidia.com> | 2016-05-19 12:28:30 -0400 |
---|---|---|
committer | Terje Bergstrom <tbergstrom@nvidia.com> | 2016-05-20 16:58:00 -0400 |
commit | 72ae2dedf56e8d8f252497e7cadc80dd9c90ff81 (patch) | |
tree | 14c73b2c89c74492edb39b0d01dd740c884ec28e /drivers/gpu/nvgpu/gk20a/pmu_gk20a.c | |
parent | a21e56d584641202327f64741b06b1cd9633d0f6 (diff) |
gpu: nvgpu: Add HAL op for PMU reset
Sequence to reset PMU is different for iGPU and dGPU. Specialize
and implement iGPU version.
Change-Id: I5b9ff2c018a736bc9e27b90d0942c52706b12a12
Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com>
Reviewed-on: http://git-master/r/1150540
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/pmu_gk20a.c')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/pmu_gk20a.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/pmu_gk20a.c b/drivers/gpu/nvgpu/gk20a/pmu_gk20a.c index 54b2eef4..8bf382fd 100644 --- a/drivers/gpu/nvgpu/gk20a/pmu_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/pmu_gk20a.c | |||
@@ -2757,6 +2757,13 @@ static void gk20a_write_dmatrfbase(struct gk20a *g, u32 addr) | |||
2757 | gk20a_writel(g, pwr_falcon_dmatrfbase_r(), addr); | 2757 | gk20a_writel(g, pwr_falcon_dmatrfbase_r(), addr); |
2758 | } | 2758 | } |
2759 | 2759 | ||
2760 | int gk20a_pmu_reset(struct gk20a *g) | ||
2761 | { | ||
2762 | gk20a_reset(g, mc_enable_pwr_enabled_f()); | ||
2763 | |||
2764 | return 0; | ||
2765 | } | ||
2766 | |||
2760 | void gk20a_init_pmu_ops(struct gpu_ops *gops) | 2767 | void gk20a_init_pmu_ops(struct gpu_ops *gops) |
2761 | { | 2768 | { |
2762 | gops->pmu.prepare_ucode = gk20a_prepare_ucode; | 2769 | gops->pmu.prepare_ucode = gk20a_prepare_ucode; |
@@ -2770,6 +2777,7 @@ void gk20a_init_pmu_ops(struct gpu_ops *gops) | |||
2770 | gops->pmu.pmu_pg_grinit_param = NULL; | 2777 | gops->pmu.pmu_pg_grinit_param = NULL; |
2771 | gops->pmu.send_lrf_tex_ltc_dram_overide_en_dis_cmd = NULL; | 2778 | gops->pmu.send_lrf_tex_ltc_dram_overide_en_dis_cmd = NULL; |
2772 | gops->pmu.dump_secure_fuses = NULL; | 2779 | gops->pmu.dump_secure_fuses = NULL; |
2780 | gops->pmu.reset = gk20a_pmu_reset; | ||
2773 | } | 2781 | } |
2774 | 2782 | ||
2775 | int gk20a_init_pmu_support(struct gk20a *g) | 2783 | int gk20a_init_pmu_support(struct gk20a *g) |