summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/pmu_gk20a.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/pmu_gk20a.c')
-rw-r--r--drivers/gpu/nvgpu/gk20a/pmu_gk20a.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/pmu_gk20a.c b/drivers/gpu/nvgpu/gk20a/pmu_gk20a.c
index 7c441f53..06e7a4e6 100644
--- a/drivers/gpu/nvgpu/gk20a/pmu_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/pmu_gk20a.c
@@ -3677,16 +3677,22 @@ int gk20a_pmu_destroy(struct gk20a *g)
3677 3677
3678int gk20a_pmu_load_norm(struct gk20a *g, u32 *load) 3678int gk20a_pmu_load_norm(struct gk20a *g, u32 *load)
3679{ 3679{
3680 *load = g->pmu.load_shadow;
3681 return 0;
3682}
3683
3684int gk20a_pmu_load_update(struct gk20a *g)
3685{
3680 struct pmu_gk20a *pmu = &g->pmu; 3686 struct pmu_gk20a *pmu = &g->pmu;
3681 u16 _load = 0; 3687 u16 _load = 0;
3682 3688
3683 if (!pmu->perfmon_ready) { 3689 if (!pmu->perfmon_ready) {
3684 *load = 0; 3690 pmu->load_shadow = 0;
3685 return 0; 3691 return 0;
3686 } 3692 }
3687 3693
3688 pmu_copy_from_dmem(pmu, pmu->sample_buffer, (u8 *)&_load, 2, 0); 3694 pmu_copy_from_dmem(pmu, pmu->sample_buffer, (u8 *)&_load, 2, 0);
3689 *load = _load / 10; 3695 pmu->load_shadow = _load / 10;
3690 3696
3691 return 0; 3697 return 0;
3692} 3698}