summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDeepak Nibade <dnibade@nvidia.com>2018-07-06 05:28:34 -0400
committermobile promotions <svcmobile_promotions@nvidia.com>2018-07-06 16:26:32 -0400
commit5f8bb126a0ca473b2e0c9cbdb91f011b2b49c4ea (patch)
tree76d321c250c2144bf0d4180d8add6aaf98d4c788
parent46a66efb0e72172233ef79f2db0cc2f042bfe90e (diff)
gpu: nvgpu: add NULL check for enable/disable_shadow_rom HALs
gops.xve.enable_shadow_rom and gops.xve.disable_shadow_rom HALs could be NULL on some platforms Execute them only if they are defined Jira NVGPUT-120 Change-Id: I683d74a850372f442291a419951a2376805eb1e5 Signed-off-by: Deepak Nibade <dnibade@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/1772559 Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com> GVS: Gerrit_Virtual_Submit Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com> Reviewed-by: svccoveritychecker <svccoveritychecker@nvidia.com> Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
-rw-r--r--drivers/gpu/nvgpu/gp106/bios_gp106.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/gpu/nvgpu/gp106/bios_gp106.c b/drivers/gpu/nvgpu/gp106/bios_gp106.c
index e30baf38..09d7b9af 100644
--- a/drivers/gpu/nvgpu/gp106/bios_gp106.c
+++ b/drivers/gpu/nvgpu/gp106/bios_gp106.c
@@ -196,7 +196,9 @@ int gp106_bios_init(struct gk20a *g)
196 g->bios.data = nvgpu_vmalloc(g, BIOS_SIZE); 196 g->bios.data = nvgpu_vmalloc(g, BIOS_SIZE);
197 if (!g->bios.data) 197 if (!g->bios.data)
198 return -ENOMEM; 198 return -ENOMEM;
199 g->ops.xve.disable_shadow_rom(g); 199
200 if (g->ops.xve.disable_shadow_rom)
201 g->ops.xve.disable_shadow_rom(g);
200 for (i = 0; i < g->bios.size/4; i++) { 202 for (i = 0; i < g->bios.size/4; i++) {
201 u32 val = be32_to_cpu(gk20a_readl(g, 0x300000 + i*4)); 203 u32 val = be32_to_cpu(gk20a_readl(g, 0x300000 + i*4));
202 204
@@ -205,7 +207,8 @@ int gp106_bios_init(struct gk20a *g)
205 g->bios.data[(i*4)+2] = (val >> 8) & 0xff; 207 g->bios.data[(i*4)+2] = (val >> 8) & 0xff;
206 g->bios.data[(i*4)+3] = val & 0xff; 208 g->bios.data[(i*4)+3] = val & 0xff;
207 } 209 }
208 g->ops.xve.enable_shadow_rom(g); 210 if (g->ops.xve.enable_shadow_rom)
211 g->ops.xve.enable_shadow_rom(g);
209 212
210 err = nvgpu_bios_parse_rom(g); 213 err = nvgpu_bios_parse_rom(g);
211 if (err) 214 if (err)