mirror of
git://nv-tegra.nvidia.com/linux-nvgpu.git
synced 2025-12-24 02:22:34 +03:00
gpu: nvgpu: gv11b: set preempt timeout
For pbdma/eng/runlist preempt polling use fifo_eng_timeout_us converted to ms. Bug 200426402 Change-Id: I2137bb9c5517d27c514ddd7ef0c601230a1ddb16 Signed-off-by: Seema Khowala <seemaj@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/1775442 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
ea1a1942a6
commit
a94dd24e26
@@ -38,7 +38,7 @@ u32 gv100_fifo_get_num_fifos(struct gk20a *g)
|
||||
|
||||
u32 gv100_fifo_get_preempt_timeout(struct gk20a *g)
|
||||
{
|
||||
return DEFAULT_FIFO_PREEMPT_TIMEOUT;
|
||||
return g->fifo_eng_timeout_us / 1000 ;
|
||||
}
|
||||
|
||||
void gv100_apply_ctxsw_timeout_intr(struct gk20a *g)
|
||||
|
||||
@@ -387,13 +387,12 @@ u32 gv11b_fifo_intr_0_error_mask(struct gk20a *g)
|
||||
|
||||
u32 gv11b_fifo_get_preempt_timeout(struct gk20a *g)
|
||||
{
|
||||
/* if timeouts are enabled, using 3000ms timeout
|
||||
* for polling pdma/eng/runlist might kick in
|
||||
* timeout handler in the cases where preempt
|
||||
* is stuck. Use 1000ms timeout for polling when
|
||||
* timeouts are enabled */
|
||||
return nvgpu_is_timeouts_enabled(g) ? PREEMPT_TIMEOUT_1000_MS :
|
||||
g->gr_idle_timeout_default;
|
||||
/* using gr_idle_timeout for polling pdma/eng/runlist
|
||||
* might kick in timeout handler in the cases where
|
||||
* preempt is stuck. Use fifo_eng_timeout converted to ms
|
||||
* for preempt polling */
|
||||
|
||||
return g->fifo_eng_timeout_us / 1000 ;
|
||||
}
|
||||
|
||||
static int gv11b_fifo_poll_pbdma_chan_status(struct gk20a *g, u32 id,
|
||||
|
||||
@@ -51,7 +51,6 @@
|
||||
#define CHANNEL_INFO_VEID0 0
|
||||
|
||||
#define MAX_PRE_SI_RETRIES 200000 /* 1G/500KHz * 100 */
|
||||
#define PREEMPT_TIMEOUT_1000_MS 1000
|
||||
|
||||
struct gpu_ops;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user