diff options
Diffstat (limited to 'drivers/gpu/nvgpu/vgpu/gr_vgpu.c')
-rw-r--r-- | drivers/gpu/nvgpu/vgpu/gr_vgpu.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/gpu/nvgpu/vgpu/gr_vgpu.c b/drivers/gpu/nvgpu/vgpu/gr_vgpu.c index 60a8f6c5..2b4b3c26 100644 --- a/drivers/gpu/nvgpu/vgpu/gr_vgpu.c +++ b/drivers/gpu/nvgpu/vgpu/gr_vgpu.c | |||
@@ -99,7 +99,7 @@ static int vgpu_gr_alloc_global_ctx_buffers(struct gk20a *g) | |||
99 | u32 cb_buffer_size = gr->bundle_cb_default_size * | 99 | u32 cb_buffer_size = gr->bundle_cb_default_size * |
100 | gr_scc_bundle_cb_size_div_256b_byte_granularity_v(); | 100 | gr_scc_bundle_cb_size_div_256b_byte_granularity_v(); |
101 | 101 | ||
102 | u32 pagepool_buffer_size = gr_scc_pagepool_total_pages_hwmax_value_v() * | 102 | u32 pagepool_buffer_size = g->ops.gr.pagepool_default_size(g) * |
103 | gr_scc_pagepool_total_pages_byte_granularity_v(); | 103 | gr_scc_pagepool_total_pages_byte_granularity_v(); |
104 | 104 | ||
105 | gk20a_dbg_fn(""); | 105 | gk20a_dbg_fn(""); |
@@ -530,6 +530,11 @@ static int vgpu_gr_init_gr_config(struct gk20a *g, struct gr_gk20a *gr) | |||
530 | &gr->max_tpc_count)) | 530 | &gr->max_tpc_count)) |
531 | return -ENOMEM; | 531 | return -ENOMEM; |
532 | 532 | ||
533 | if (vgpu_get_attribute(platform->virt_handle, | ||
534 | TEGRA_VGPU_ATTRIB_TPC_COUNT, | ||
535 | &gr->tpc_count)) | ||
536 | return -ENOMEM; | ||
537 | |||
533 | gr->gpc_tpc_mask = kzalloc(gr->gpc_count * sizeof(u32), GFP_KERNEL); | 538 | gr->gpc_tpc_mask = kzalloc(gr->gpc_count * sizeof(u32), GFP_KERNEL); |
534 | if (!gr->gpc_tpc_mask) { | 539 | if (!gr->gpc_tpc_mask) { |
535 | gk20a_err(dev_from_gk20a(g), "%s: out of memory\n", __func__); | 540 | gk20a_err(dev_from_gk20a(g), "%s: out of memory\n", __func__); |