mirror of
git://nv-tegra.nvidia.com/linux-nvgpu.git
synced 2025-12-23 09:57:08 +03:00
gpu: nvgpu: gv11b: Enable perfmon.
t19x PMU ucode uses RPC mechanism for PERFMON commands. - Declared "pmu_init_perfmon", "pmu_perfmon_start_sampling", "pmu_perfmon_stop_sampling" and "pmu_perfmon_get_samples" in pmu ops to differenciate for chips using RPC & legacy cmd/msg mechanism. - Defined and used PERFMON RPC commands for t19x - INIT - START - STOP - QUERY - Adds RPC handler for PERFMON RPC commands. - For guerying GPU utilization/load, we need to send PERFMON_QUERY RPC command for gv11b. - Enables perfmon for gv11b. Bug 2039013 Change-Id: Ic32326f81d48f11bc772afb8fee2dee6e427a699 Signed-off-by: Deepak Goyal <dgoyal@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/1614114 Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com> GVS: Gerrit_Virtual_Submit Reviewed-by: Seshendra Gadagottu <sgadagottu@nvidia.com> Tested-by: Seshendra Gadagottu <sgadagottu@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>
This commit is contained in:
committed by
mobile promotions
parent
a57258e9b1
commit
e0dbf3a784
@@ -352,11 +352,11 @@ static ssize_t perfmon_events_enable_write(struct file *file,
|
||||
if (val && !g->pmu.perfmon_sampling_enabled &&
|
||||
nvgpu_is_enabled(g, NVGPU_PMU_PERFMON)) {
|
||||
g->pmu.perfmon_sampling_enabled = true;
|
||||
nvgpu_pmu_perfmon_start_sampling(&(g->pmu));
|
||||
g->ops.pmu.pmu_perfmon_start_sampling(&(g->pmu));
|
||||
} else if (!val && g->pmu.perfmon_sampling_enabled &&
|
||||
nvgpu_is_enabled(g, NVGPU_PMU_PERFMON)) {
|
||||
g->pmu.perfmon_sampling_enabled = false;
|
||||
nvgpu_pmu_perfmon_stop_sampling(&(g->pmu));
|
||||
g->ops.pmu.pmu_perfmon_stop_sampling(&(g->pmu));
|
||||
}
|
||||
gk20a_idle(g);
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user