From 9aa7de15c2a644e9c7e9c157e49087e66d4ac3d0 Mon Sep 17 00:00:00 2001 From: Peter Daifuku Date: Wed, 31 Aug 2016 17:04:56 -0700 Subject: gpu: nvgpu: vgpu: cyclestat snapshot support Add support for cyclestats snapshots in the virtual case Bug 1700143 JIRA EVLR-278 Change-Id: I376a8804d57324f43eb16452d857a3b7bb0ecc90 Signed-off-by: Peter Daifuku Reviewed-on: http://git-master/r/1211547 GVS: Gerrit_Virtual_Submit Reviewed-by: Terje Bergstrom --- drivers/gpu/nvgpu/gk20a/gk20a.h | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'drivers/gpu/nvgpu/gk20a/gk20a.h') diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.h b/drivers/gpu/nvgpu/gk20a/gk20a.h index 669ef1b9..1ca8ff77 100644 --- a/drivers/gpu/nvgpu/gk20a/gk20a.h +++ b/drivers/gpu/nvgpu/gk20a/gk20a.h @@ -657,6 +657,24 @@ struct gpu_ops { struct { int (*init)(struct gk20a *g); } bios; +#if defined(CONFIG_GK20A_CYCLE_STATS) + struct { + int (*enable_snapshot)(struct channel_gk20a *ch, + struct gk20a_cs_snapshot_client *client); + void (*disable_snapshot)(struct gr_gk20a *gr); + int (*check_data_available)(struct channel_gk20a *ch, + u32 *pending, + bool *hw_overflow); + void (*set_handled_snapshots)(struct gk20a *g, u32 num); + u32 (*allocate_perfmon_ids)(struct gk20a_cs_snapshot *data, + u32 count); + u32 (*release_perfmon_ids)(struct gk20a_cs_snapshot *data, + u32 start, + u32 count); + int (*detach_snapshot)(struct channel_gk20a *ch, + struct gk20a_cs_snapshot_client *client); + } css; +#endif }; struct nvgpu_bios_ucode { -- cgit v1.2.2