Commit Graph

3 Commits

Author SHA1 Message Date
tkudav
c6e021589e gpu: nvgpu: PS3.5 VFE VAR and EQU changes
Changes between GV100 and Turing VFE pstate tables-
1. PS3.5 ucode packs two sets of vfe boardobjgrp - primary and
   rppm in new struct whose name is appended with suffix pack. The
   rppm (runtime power and performance model) set is needed to
   achieve Max Q. The rppm set is not relevant to Automotive SKUs and
   entries are set to 'disabled'. But the turing ucode in R400 uses
   the 'pack' struct to calculate supersurface offset and size of
   vfe_var/equ boardobjgrp.
2. Header size has been increased to add RPPM related VFE variable
   and equation count.

VFE Variables boardobjgrp specific changes-
1. New var type 'single caller specified' had been added to represent
   generic type of variable which is not associated with voltage or
   frequency but identified by a Unique ID.
2. The frequency variable type can be associated with a clock domain,
   if the clock domain index availability flag is set.

VFE Equations boardobjgrp specific changes-
1. New entry type 'scalar' had been added to allow scaling equation
   pointed by 'equ_idx_to_scale'.
2. More ouput types are added to represent the equation evaluation
   results.

We modify the nvgpu Turing driver and GV100 ucode to adapt to these
changes.
This patch also fixes some MISRA defects in touched files.

JIRA NVGPU-1178

Change-Id: I90910ac8dccf0b98a588cbc442dc11ac4fbd2e61
Signed-off-by: tkudav <tkudav@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/1928999
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
GVS: Gerrit_Virtual_Submit
Reviewed-by: Vaikundanathan S <vaikuns@nvidia.com>
Tested-by: Vaikundanathan S <vaikuns@nvidia.com>
Reviewed-by: Vijayakumar Subbu <vsubbu@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
2018-12-20 21:46:29 -08:00
Terje Bergstrom
7dc15d6d33 gpu: nvgpu: Move boardobj to common
Move boardobj unit to live under common. It's common code. Also moves
the header files to include/nvgpu/ to indicate that they're meant to
be called from outside boardobj unit.

JIRA NVGPU-596

Change-Id: I57758371c47083e3f666e0cc6d05c48c6d070529
Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/1850419
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
2018-10-19 17:24:58 -07:00
Deepak Nibade
b96a6506d0 gpu: nvgpu: rename PMU perf unit to pmu_perf
Move all files under perf/* to pmu_perf/* since pmu_perf is logically
appropriate name for PMU's perf unit
Rename perf.c to pmu_perf.c

Also rename the HAL from gops.perf to gops.pmu_perf

Jira NVGPU-1102

Change-Id: I79e73b8b102ddf6b49783c2f38d861cd43b0b4c6
Signed-off-by: Deepak Nibade <dnibade@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/1819301
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
2018-09-25 13:57:52 -07:00