From dc5f6bcee0281c5fa63c977519d732218f519ea0 Mon Sep 17 00:00:00 2001 From: Terje Bergstrom Date: Tue, 7 Nov 2017 09:19:53 -0800 Subject: gpu: nvgpu: Return GPU classes in get_litter_value Return GPU classes in HAL get_litter_value() instead of assigning them to GPU characteristics at HAL initialization time. JIRA NVGPU-259 Change-Id: Ife7a5cb38df3d33ce98a1caa43d3873fb1431234 Signed-off-by: Terje Bergstrom Reviewed-on: https://git-master.nvidia.com/r/1593683 Reviewed-by: mobile promotions Tested-by: mobile promotions --- drivers/gpu/nvgpu/gm20b/hal_gm20b.c | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) (limited to 'drivers/gpu/nvgpu/gm20b') diff --git a/drivers/gpu/nvgpu/gm20b/hal_gm20b.c b/drivers/gpu/nvgpu/gm20b/hal_gm20b.c index 4e214cc4..20ab808a 100644 --- a/drivers/gpu/nvgpu/gm20b/hal_gm20b.c +++ b/drivers/gpu/nvgpu/gm20b/hal_gm20b.c @@ -153,6 +153,24 @@ int gm20b_get_litter_value(struct gk20a *g, int value) case GPU_LIT_FBPA_SHARED_BASE: ret = 0; break; + case GPU_LIT_TWOD_CLASS: + ret = FERMI_TWOD_A; + break; + case GPU_LIT_THREED_CLASS: + ret = MAXWELL_B; + break; + case GPU_LIT_COMPUTE_CLASS: + ret = MAXWELL_COMPUTE_B; + break; + case GPU_LIT_GPFIFO_CLASS: + ret = MAXWELL_CHANNEL_GPFIFO_A; + break; + case GPU_LIT_I2M_CLASS: + ret = KEPLER_INLINE_TO_MEMORY_B; + break; + case GPU_LIT_DMA_COPY_CLASS: + ret = MAXWELL_DMA_COPY_A; + break; default: nvgpu_err(g, "Missing definition %d", value); BUG(); @@ -572,7 +590,6 @@ static const struct gpu_ops gm20b_ops = { int gm20b_init_hal(struct gk20a *g) { struct gpu_ops *gops = &g->ops; - struct nvgpu_gpu_characteristics *c = &g->gpu_characteristics; u32 val; gops->ltc = gm20b_ops.ltc; @@ -691,12 +708,5 @@ int gm20b_init_hal(struct gk20a *g) g->name = "gm20b"; - c->twod_class = FERMI_TWOD_A; - c->threed_class = MAXWELL_B; - c->compute_class = MAXWELL_COMPUTE_B; - c->gpfifo_class = MAXWELL_CHANNEL_GPFIFO_A; - c->inline_to_memory_class = KEPLER_INLINE_TO_MEMORY_B; - c->dma_copy_class = MAXWELL_DMA_COPY_A; - return 0; } -- cgit v1.2.2