summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/common/falcon/falcon.c
diff options
context:
space:
mode:
authorNicolas Benech <nbenech@nvidia.com>2018-08-23 16:23:52 -0400
committermobile promotions <svcmobile_promotions@nvidia.com>2018-09-05 23:39:08 -0400
commit2eface802a4aea417206bcdda689a65cf47d300b (patch)
tree502af9d48004af4edf8f02a2a7cf751ef5a11325 /drivers/gpu/nvgpu/common/falcon/falcon.c
parentb44c7fdb114a63ab98fffc0f246776b56399ff64 (diff)
gpu: nvgpu: Fix mutex MISRA 17.7 violations
MISRA Rule-17.7 requires the return value of all functions to be used. Fix is either to use the return value or change the function to return void. This patch contains fix for calls to nvgpu_mutex_init and improves related error handling. JIRA NVGPU-677 Change-Id: I609fa138520cc7ccfdd5aa0e7fd28c8ca0b3a21c Signed-off-by: Nicolas Benech <nbenech@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/1805598 Reviewed-by: svc-misra-checker <svc-misra-checker@nvidia.com> GVS: Gerrit_Virtual_Submit Reviewed-by: Alex Waterman <alexw@nvidia.com> Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/common/falcon/falcon.c')
-rw-r--r--drivers/gpu/nvgpu/common/falcon/falcon.c14
1 files changed, 9 insertions, 5 deletions
diff --git a/drivers/gpu/nvgpu/common/falcon/falcon.c b/drivers/gpu/nvgpu/common/falcon/falcon.c
index 81ba5e81..6e5a477d 100644
--- a/drivers/gpu/nvgpu/common/falcon/falcon.c
+++ b/drivers/gpu/nvgpu/common/falcon/falcon.c
@@ -397,10 +397,11 @@ int nvgpu_flcn_bl_bootstrap(struct nvgpu_falcon *flcn,
397 return status; 397 return status;
398} 398}
399 399
400void nvgpu_flcn_sw_init(struct gk20a *g, u32 flcn_id) 400int nvgpu_flcn_sw_init(struct gk20a *g, u32 flcn_id)
401{ 401{
402 struct nvgpu_falcon *flcn = NULL; 402 struct nvgpu_falcon *flcn = NULL;
403 struct gpu_ops *gops = &g->ops; 403 struct gpu_ops *gops = &g->ops;
404 int err = 0;
404 405
405 switch (flcn_id) { 406 switch (flcn_id) {
406 case FALCON_ID_PMU: 407 case FALCON_ID_PMU:
@@ -431,12 +432,15 @@ void nvgpu_flcn_sw_init(struct gk20a *g, u32 flcn_id)
431 break; 432 break;
432 default: 433 default:
433 nvgpu_err(g, "Invalid/Unsupported falcon ID %x", flcn_id); 434 nvgpu_err(g, "Invalid/Unsupported falcon ID %x", flcn_id);
435 err = -ENODEV;
434 break; 436 break;
435 }; 437 };
436 438
437 /* call to HAL method to assign flcn base & ops to selected falcon */ 439 if (err != 0) {
438 if (flcn) { 440 return err;
439 flcn->g = g;
440 gops->falcon.falcon_hal_sw_init(flcn);
441 } 441 }
442
443 /* call to HAL method to assign flcn base & ops to selected falcon */
444 flcn->g = g;
445 return gops->falcon.falcon_hal_sw_init(flcn);
442} 446}