diff options
author | Deepak Nibade <dnibade@nvidia.com> | 2018-07-06 05:28:34 -0400 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2018-07-06 16:26:32 -0400 |
commit | 5f8bb126a0ca473b2e0c9cbdb91f011b2b49c4ea (patch) | |
tree | 76d321c250c2144bf0d4180d8add6aaf98d4c788 | |
parent | 46a66efb0e72172233ef79f2db0cc2f042bfe90e (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.c | 7 |
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) |