diff options
Diffstat (limited to 'drivers/gpu/nvgpu/vgpu')
-rw-r--r-- | drivers/gpu/nvgpu/vgpu/fifo_vgpu.c | 5 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/vgpu/vgpu.c | 1 |
2 files changed, 6 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/vgpu/fifo_vgpu.c b/drivers/gpu/nvgpu/vgpu/fifo_vgpu.c index ac506a34..535de851 100644 --- a/drivers/gpu/nvgpu/vgpu/fifo_vgpu.c +++ b/drivers/gpu/nvgpu/vgpu/fifo_vgpu.c | |||
@@ -270,6 +270,11 @@ static int vgpu_init_fifo_setup_sw(struct gk20a *g) | |||
270 | goto clean_up; | 270 | goto clean_up; |
271 | } | 271 | } |
272 | 272 | ||
273 | /* if reduced BAR1 range is specified, use offset of 0 | ||
274 | (server returns offset assuming full BAR1 range) */ | ||
275 | if (resource_size(g->bar1_mem) == (resource_size_t)f->userd.size) | ||
276 | f->userd.gpu_va = 0; | ||
277 | |||
273 | gk20a_dbg(gpu_dbg_map, "userd bar1 va = 0x%llx", f->userd.gpu_va); | 278 | gk20a_dbg(gpu_dbg_map, "userd bar1 va = 0x%llx", f->userd.gpu_va); |
274 | 279 | ||
275 | f->channel = kzalloc(f->num_channels * sizeof(*f->channel), | 280 | f->channel = kzalloc(f->num_channels * sizeof(*f->channel), |
diff --git a/drivers/gpu/nvgpu/vgpu/vgpu.c b/drivers/gpu/nvgpu/vgpu/vgpu.c index 90197ab4..78492d3b 100644 --- a/drivers/gpu/nvgpu/vgpu/vgpu.c +++ b/drivers/gpu/nvgpu/vgpu/vgpu.c | |||
@@ -199,6 +199,7 @@ static int vgpu_init_support(struct platform_device *pdev) | |||
199 | err = PTR_ERR(g->bar1); | 199 | err = PTR_ERR(g->bar1); |
200 | goto fail; | 200 | goto fail; |
201 | } | 201 | } |
202 | g->bar1_mem = r; | ||
202 | 203 | ||
203 | mutex_init(&g->dbg_sessions_lock); | 204 | mutex_init(&g->dbg_sessions_lock); |
204 | mutex_init(&g->client_lock); | 205 | mutex_init(&g->client_lock); |