From f7e37e6847896992077fe8d434ea14a751318175 Mon Sep 17 00:00:00 2001 From: Peter Daifuku Date: Wed, 21 Jun 2017 16:44:55 -0700 Subject: gpu: nvgpu: vgpu: perfbuffer support Add vgpu support for ModeE perfbuffers - VM allocation is handled by the kernel, with final mapping handled by the RM server - Enabling/disabling the perfbuffer is handled by the RM server Bug 1880196 JIRA EVLR-1074 Change-Id: Ifbeb5ede6b07e2e112b930c602c22b66a58ac920 Signed-off-by: Peter Daifuku Reviewed-on: https://git-master/r/1506747 Reviewed-by: mobile promotions Tested-by: mobile promotions --- include/linux/tegra_vgpu.h | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'include/linux/tegra_vgpu.h') diff --git a/include/linux/tegra_vgpu.h b/include/linux/tegra_vgpu.h index f0a809ba..eb510438 100644 --- a/include/linux/tegra_vgpu.h +++ b/include/linux/tegra_vgpu.h @@ -104,6 +104,7 @@ enum { TEGRA_VGPU_CMD_GET_GPU_FREQ_TABLE = 70, TEGRA_VGPU_CMD_CAP_GPU_CLK_RATE = 71, TEGRA_VGPU_CMD_PROF_MGT = 72, + TEGRA_VGPU_CMD_PERFBUF_MGT = 73, TEGRA_VGPU_CMD_GET_TIMESTAMPS_ZIPPER = 74, }; @@ -488,6 +489,12 @@ struct tegra_vgpu_prof_mgt_params { u32 mode; }; +struct tegra_vgpu_perfbuf_mgt_params { + u64 vm_handle; + u64 offset; + u32 size; +}; + #define TEGRA_VGPU_GPU_FREQ_TABLE_SIZE 25 struct tegra_vgpu_get_gpu_freq_table_params { @@ -545,6 +552,7 @@ struct tegra_vgpu_cmd_msg { struct tegra_vgpu_suspend_resume_contexts resume_contexts; struct tegra_vgpu_clear_sm_error_state clear_sm_error_state; struct tegra_vgpu_prof_mgt_params prof_management; + struct tegra_vgpu_perfbuf_mgt_params perfbuf_management; struct tegra_vgpu_get_timestamps_zipper_params get_timestamps_zipper; struct tegra_vgpu_get_gpu_freq_table_params get_gpu_freq_table; char padding[192]; -- cgit v1.2.2