summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gm20b
diff options
context:
space:
mode:
authorTerje Bergstrom <tbergstrom@nvidia.com>2017-11-07 12:19:53 -0500
committermobile promotions <svcmobile_promotions@nvidia.com>2017-11-09 22:18:11 -0500
commitdc5f6bcee0281c5fa63c977519d732218f519ea0 (patch)
treebd465cb7e5c45999019a787547bdb79835d9dbf5 /drivers/gpu/nvgpu/gm20b
parent1dad4adbd2aecfd484a84d47b29b81bb665bc60b (diff)
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 <tbergstrom@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/1593683 Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gm20b')
-rw-r--r--drivers/gpu/nvgpu/gm20b/hal_gm20b.c26
1 files changed, 18 insertions, 8 deletions
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)
153 case GPU_LIT_FBPA_SHARED_BASE: 153 case GPU_LIT_FBPA_SHARED_BASE:
154 ret = 0; 154 ret = 0;
155 break; 155 break;
156 case GPU_LIT_TWOD_CLASS:
157 ret = FERMI_TWOD_A;
158 break;
159 case GPU_LIT_THREED_CLASS:
160 ret = MAXWELL_B;
161 break;
162 case GPU_LIT_COMPUTE_CLASS:
163 ret = MAXWELL_COMPUTE_B;
164 break;
165 case GPU_LIT_GPFIFO_CLASS:
166 ret = MAXWELL_CHANNEL_GPFIFO_A;
167 break;
168 case GPU_LIT_I2M_CLASS:
169 ret = KEPLER_INLINE_TO_MEMORY_B;
170 break;
171 case GPU_LIT_DMA_COPY_CLASS:
172 ret = MAXWELL_DMA_COPY_A;
173 break;
156 default: 174 default:
157 nvgpu_err(g, "Missing definition %d", value); 175 nvgpu_err(g, "Missing definition %d", value);
158 BUG(); 176 BUG();
@@ -572,7 +590,6 @@ static const struct gpu_ops gm20b_ops = {
572int gm20b_init_hal(struct gk20a *g) 590int gm20b_init_hal(struct gk20a *g)
573{ 591{
574 struct gpu_ops *gops = &g->ops; 592 struct gpu_ops *gops = &g->ops;
575 struct nvgpu_gpu_characteristics *c = &g->gpu_characteristics;
576 u32 val; 593 u32 val;
577 594
578 gops->ltc = gm20b_ops.ltc; 595 gops->ltc = gm20b_ops.ltc;
@@ -691,12 +708,5 @@ int gm20b_init_hal(struct gk20a *g)
691 708
692 g->name = "gm20b"; 709 g->name = "gm20b";
693 710
694 c->twod_class = FERMI_TWOD_A;
695 c->threed_class = MAXWELL_B;
696 c->compute_class = MAXWELL_COMPUTE_B;
697 c->gpfifo_class = MAXWELL_CHANNEL_GPFIFO_A;
698 c->inline_to_memory_class = KEPLER_INLINE_TO_MEMORY_B;
699 c->dma_copy_class = MAXWELL_DMA_COPY_A;
700
701 return 0; 711 return 0;
702} 712}