summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/channel_gk20a.h
diff options
context:
space:
mode:
authorDeepak Nibade <dnibade@nvidia.com>2017-11-23 06:59:14 -0500
committermobile promotions <svcmobile_promotions@nvidia.com>2017-11-28 12:46:54 -0500
commitce06f74d6ba9eb495661c29eabcd6da2f52c7c8b (patch)
tree307c045b4df7861d20f46a120a3726e274f6e472 /drivers/gpu/nvgpu/gk20a/channel_gk20a.h
parent861b11a968b1f51f45832486e62bfe23fc29fc19 (diff)
gpu: nvgpu: move cycle state buffer handler to linux
We use dma_buf pointer cyclestate_buffer_handler in common code But since this is linux specific, we need to move this out of common code and into linux specific code Move dma_buf pointer cyclestate_buffer_handler from common channel code to struct nvgpu_channel_linux Fix all pointer accesses to this handle Move gk20a_channel_free_cycle_stats_buffer() to ioctl_channel.c since it is mostly linux specific And since gk20a_channel_free_cycle_stats_buffer() needs to be called while closing the channel, call it from nvgpu_channel_close_linux() Jira NVGPU-397 Jira NVGPU-415 Change-Id: Ifb429e49b8f7a1c9e2bc757f3efdd50b28ceca1f Signed-off-by: Deepak Nibade <dnibade@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/1603909 GVS: Gerrit_Virtual_Submit Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com> Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/channel_gk20a.h')
-rw-r--r--drivers/gpu/nvgpu/gk20a/channel_gk20a.h8
1 files changed, 3 insertions, 5 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/channel_gk20a.h b/drivers/gpu/nvgpu/gk20a/channel_gk20a.h
index 87ab6202..9d294399 100644
--- a/drivers/gpu/nvgpu/gk20a/channel_gk20a.h
+++ b/drivers/gpu/nvgpu/gk20a/channel_gk20a.h
@@ -253,10 +253,9 @@ struct channel_gk20a {
253 253
254#if defined(CONFIG_GK20A_CYCLE_STATS) 254#if defined(CONFIG_GK20A_CYCLE_STATS)
255 struct { 255 struct {
256 void *cyclestate_buffer; 256 void *cyclestate_buffer;
257 u32 cyclestate_buffer_size; 257 u32 cyclestate_buffer_size;
258 struct dma_buf *cyclestate_buffer_handler; 258 struct nvgpu_mutex cyclestate_buffer_mutex;
259 struct nvgpu_mutex cyclestate_buffer_mutex;
260 } cyclestate; 259 } cyclestate;
261 260
262 struct nvgpu_mutex cs_client_mutex; 261 struct nvgpu_mutex cs_client_mutex;
@@ -370,7 +369,6 @@ int gk20a_channel_alloc_gpfifo(struct channel_gk20a *c,
370 unsigned int num_entries, 369 unsigned int num_entries,
371 unsigned int num_inflight_jobs, 370 unsigned int num_inflight_jobs,
372 u32 flags); 371 u32 flags);
373void gk20a_channel_free_cycle_stats_buffer(struct channel_gk20a *ch);
374 372
375void gk20a_channel_timeout_restart_all_channels(struct gk20a *g); 373void gk20a_channel_timeout_restart_all_channels(struct gk20a *g);
376 374