summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/channel_gk20a.h
diff options
context:
space:
mode:
authorRichard Zhao <rizhao@nvidia.com>2016-01-04 13:28:04 -0500
committerVladislav Buzov <vbuzov@nvidia.com>2016-01-10 23:07:53 -0500
commita9c6f595399074e88c16f3557e5acb29db1d52d5 (patch)
tree2d2665668bac915b5598d83881a1efec892be435 /drivers/gpu/nvgpu/gk20a/channel_gk20a.h
parent3484fd0d1365c6f97723d97cb45664aa75c45f32 (diff)
gpu: nvgpu: enable semaphore acquire timeout
It'll detect dead semaphore acquire. The worst case is when ACQUIRE_SWITCH is disabled, semaphore acquire will poll and consume full gpu timeslicees. The timeout value is set to half of channel WDT. Bug 1636800 Change-Id: Ida6ccc534006a191513edf47e7b82d4b5b758684 Signed-off-by: Richard Zhao <rizhao@nvidia.com> Reviewed-on: http://git-master/r/928827 GVS: Gerrit_Virtual_Submit Reviewed-by: Vladislav Buzov <vbuzov@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/channel_gk20a.h')
-rw-r--r--drivers/gpu/nvgpu/gk20a/channel_gk20a.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/channel_gk20a.h b/drivers/gpu/nvgpu/gk20a/channel_gk20a.h
index f62d2731..ddc517b9 100644
--- a/drivers/gpu/nvgpu/gk20a/channel_gk20a.h
+++ b/drivers/gpu/nvgpu/gk20a/channel_gk20a.h
@@ -1,7 +1,7 @@
1/* 1/*
2 * GK20A graphics channel 2 * GK20A graphics channel
3 * 3 *
4 * Copyright (c) 2011-2015, NVIDIA CORPORATION. All rights reserved. 4 * Copyright (c) 2011-2016, NVIDIA CORPORATION. All rights reserved.
5 * 5 *
6 * This program is free software; you can redistribute it and/or modify it 6 * This program is free software; you can redistribute it and/or modify it
7 * under the terms and conditions of the GNU General Public License, 7 * under the terms and conditions of the GNU General Public License,
@@ -252,6 +252,7 @@ void channel_gk20a_unbind(struct channel_gk20a *ch_gk20a);
252void channel_gk20a_disable(struct channel_gk20a *ch); 252void channel_gk20a_disable(struct channel_gk20a *ch);
253int channel_gk20a_alloc_inst(struct gk20a *g, struct channel_gk20a *ch); 253int channel_gk20a_alloc_inst(struct gk20a *g, struct channel_gk20a *ch);
254void channel_gk20a_free_inst(struct gk20a *g, struct channel_gk20a *ch); 254void channel_gk20a_free_inst(struct gk20a *g, struct channel_gk20a *ch);
255u32 channel_gk20a_pbdma_acquire_val(struct channel_gk20a *c);
255int channel_gk20a_setup_ramfc(struct channel_gk20a *c, 256int channel_gk20a_setup_ramfc(struct channel_gk20a *c,
256 u64 gpfifo_base, u32 gpfifo_entries, u32 flags); 257 u64 gpfifo_base, u32 gpfifo_entries, u32 flags);
257void channel_gk20a_enable(struct channel_gk20a *ch); 258void channel_gk20a_enable(struct channel_gk20a *ch);