From 633fa4cd1fc8ef7f1b79bc4068b91c97fe4af4ef Mon Sep 17 00:00:00 2001 From: johpow01 Date: Thu, 30 Jul 2020 17:11:03 -0500 Subject: MISRA cleanup in mem_region and semihosting files MISRA defect cleanup and general code cleanup in mem_region.c and semihosting.c. This task also called for cleanup of the ARM NOR flash driver but that was removed at some point since the Jira task was created. This patch fixes all MISRA defects in these files except for a few "Calling function "console_flush()" which returns error information without testing the error information." errors which can't really be avoided. Defects Fixed File Line Rule lib/semihosting/semihosting.c 70 MISRA C-2012 Rule 14.4 (required) lib/semihosting/semihosting.c 197 MISRA C-2012 Rule 14.3 (required) lib/semihosting/semihosting.c 210 MISRA C-2012 Rule 14.4 (required) lib/utils/mem_region.c 128 MISRA C-2012 Rule 12.1 (advisory) Signed-off-by: John Powell Change-Id: I21a039d1cfccd6aa4301da09daec15e373305a80 --- lib/utils/mem_region.c | 35 ++++++++++++++++++++--------------- 1 file changed, 20 insertions(+), 15 deletions(-) (limited to 'lib/utils') diff --git a/lib/utils/mem_region.c b/lib/utils/mem_region.c index 6bd78ba82..fec086b8c 100644 --- a/lib/utils/mem_region.c +++ b/lib/utils/mem_region.c @@ -33,7 +33,7 @@ void clear_mem_regions(mem_region_t *tbl, size_t nregions) size_t i; assert(tbl != NULL); - assert(nregions > 0); + assert(nregions > 0U); for (i = 0; i < nregions; i++) { assert(tbl->nbytes > 0); @@ -64,28 +64,32 @@ void clear_map_dyn_mem_regions(struct mem_region *regions, const unsigned int attr = MT_MEMORY | MT_RW | MT_NS; assert(regions != NULL); - assert(nregions > 0 && chunk > 0); - - for ( ; nregions--; regions++) { - begin = regions->base; - size = regions->nbytes; - if ((begin & (chunk-1)) != 0 || (size & (chunk-1)) != 0) { + assert(nregions != 0U); + assert(chunk != 0U); + + for (unsigned int i = 0U; i < nregions; i++) { + begin = regions[i].base; + size = regions[i].nbytes; + if (((begin & (chunk-1U)) != 0U) || + ((size & (chunk-1U)) != 0U)) { INFO("PSCI: Not correctly aligned region\n"); panic(); } - while (size > 0) { + while (size > 0U) { r = mmap_add_dynamic_region(begin, va, chunk, attr); if (r != 0) { - INFO("PSCI: mmap_add_dynamic_region failed with %d\n", r); + INFO("PSCI: %s failed with %d\n", + "mmap_add_dynamic_region", r); panic(); } - zero_normalmem((void *) va, chunk); + zero_normalmem((void *)va, chunk); r = mmap_remove_dynamic_region(va, chunk); if (r != 0) { - INFO("PSCI: mmap_remove_dynamic_region failed with %d\n", r); + INFO("PSCI: %s failed with %d\n", + "mmap_remove_dynamic_region", r); panic(); } @@ -115,18 +119,19 @@ int mem_region_in_array_chk(mem_region_t *tbl, size_t nregions, size_t i; assert(tbl != NULL); - assert(nbytes > 0); + assert(nbytes != 0U); assert(!check_uptr_overflow(addr, nbytes-1)); region_start = addr; - region_end = addr + (nbytes - 1); - for (i = 0; i < nregions; i++) { + region_end = addr + (nbytes - 1U); + for (i = 0U; i < nregions; i++) { assert(tbl->nbytes > 0); assert(!check_uptr_overflow(tbl->base, tbl->nbytes-1)); start = tbl->base; end = start + (tbl->nbytes - 1); - if (region_start >= start && region_end <= end) + if ((region_start >= start) && (region_end <= end)) { return 0; + } tbl++; } -- cgit v1.2.3