diff options
author | Mandy Lavi <mandy.lavi@freescale.com> | 2014-11-19 05:17:46 (GMT) |
---|---|---|
committer | Matthew Weigel <Matthew.Weigel@freescale.com> | 2014-12-11 18:40:48 (GMT) |
commit | ca6d6c8930a031eeab8e121ae7de52dede339e21 (patch) | |
tree | a102319534e49b7624b67a40a3d906662ce5850b /drivers/net/ethernet/freescale/fman/inc | |
parent | 5676273b1553c5920c90592f49a1d8fce560f24d (diff) | |
download | linux-fsl-qoriq-ca6d6c8930a031eeab8e121ae7de52dede339e21.tar.xz |
fmd: fix static analysis issues
Change-Id: I2d6cead7b62116cd6a264ec91d82f3bdc3a03c10
Signed-off-by: Mandy Lavi <mandy.lavi@freescale.com>
Reviewed-on: http://git.am.freescale.net:8181/23939
Reviewed-by: Igal Liberman <Igal.Liberman@freescale.com>
Tested-by: Richard Schmitt <richard.schmitt@freescale.com>
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
Diffstat (limited to 'drivers/net/ethernet/freescale/fman/inc')
4 files changed, 30 insertions, 63 deletions
diff --git a/drivers/net/ethernet/freescale/fman/inc/debug_ext.h b/drivers/net/ethernet/freescale/fman/inc/debug_ext.h index 62865bb..57db0a1 100644 --- a/drivers/net/ethernet/freescale/fman/inc/debug_ext.h +++ b/drivers/net/ethernet/freescale/fman/inc/debug_ext.h @@ -55,24 +55,26 @@ #define DUMP_Print XX_Print #define DUMP_MAX_LEVELS 6 +#define DUMP_IDX_LEN 6 #define DUMP_MAX_STR 64 #define _CREATE_DUMP_SUBSTR(phrase) \ dumpTmpLevel = 0; dumpSubStr[0] = '\0'; \ - sprintf(dumpTmpStr, "%s", #phrase); \ + snprintf(dumpTmpStr, DUMP_MAX_STR, "%s", #phrase); \ p_DumpToken = strtok(dumpTmpStr, (dumpIsArr[0] ? "[" : ".")); \ - while (p_DumpToken != NULL) \ + while ((p_DumpToken != NULL) && (dumpTmpLevel < DUMP_MAX_LEVELS)) \ { \ - strcat(dumpSubStr, p_DumpToken); \ + strlcat(dumpSubStr, p_DumpToken, DUMP_MAX_STR); \ if (dumpIsArr[dumpTmpLevel]) \ { \ - strcat(dumpSubStr, dumpIdxStr[dumpTmpLevel]); \ + strlcat(dumpSubStr, dumpIdxStr[dumpTmpLevel], DUMP_MAX_STR); \ p_DumpToken = strtok(NULL, "."); \ } \ - if ((p_DumpToken = strtok(NULL, (dumpIsArr[++dumpTmpLevel] ? "[" : "."))) != 0) \ - strcat(dumpSubStr, "."); \ - }\ + if ((p_DumpToken != NULL) && \ + ((p_DumpToken = strtok(NULL, (dumpIsArr[++dumpTmpLevel] ? "[" : "."))) != NULL)) \ + strlcat(dumpSubStr, ".", DUMP_MAX_STR); \ + } /**************************************************************************//** @@ -99,11 +101,11 @@ starts. *//***************************************************************************/ #define DECLARE_DUMP \ - char dumpIdxStr[DUMP_MAX_LEVELS + 1][6] = { "", }; \ + char dumpIdxStr[DUMP_MAX_LEVELS + 1][DUMP_IDX_LEN] = { "", }; \ char dumpSubStr[DUMP_MAX_STR] = ""; \ char dumpTmpStr[DUMP_MAX_STR] = ""; \ char *p_DumpToken = NULL; \ - int dumpArrIdx = 0, dumpArrSize = 0, dumpVarSize = 0, dumpLevel = 0, dumpTmpLevel = 0; \ + int dumpArrIdx = 0, dumpArrSize = 0, dumpLevel = 0, dumpTmpLevel = 0; \ uint8_t dumpIsArr[DUMP_MAX_LEVELS + 1] = { 0 }; \ /* Prevent warnings if not all used */ \ UNUSED(dumpIdxStr[0][0]); \ @@ -112,7 +114,6 @@ UNUSED(p_DumpToken); \ UNUSED(dumpArrIdx); \ UNUSED(dumpArrSize); \ - UNUSED(dumpVarSize); \ UNUSED(dumpLevel); \ UNUSED(dumpTmpLevel); \ UNUSED(dumpIsArr[0]); @@ -164,8 +165,8 @@ *//***************************************************************************/ #define DUMP_SUBSTRUCT_ARRAY(idx, cnt) \ for (idx=0, dumpIsArr[dumpLevel++] = 1; \ - (idx < cnt) && sprintf(dumpIdxStr[dumpLevel-1], "[%d]", idx); \ - idx++, ((idx < cnt) || ((dumpIsArr[--dumpLevel] = 0) == 0))) + (idx < cnt) && (dumpLevel > 0) && snprintf(dumpIdxStr[dumpLevel-1], DUMP_IDX_LEN, "[%d]", idx); \ + idx++, ((idx < cnt) || (dumpIsArr[--dumpLevel] = 0))) /**************************************************************************//** @@ -189,19 +190,8 @@ void *addr = (void *)&((st)->phrase); \ physAddress_t physAddr = XX_VirtToPhys(addr); \ _CREATE_DUMP_SUBSTR(phrase); \ - dumpVarSize = sizeof((st)->phrase); \ - switch (dumpVarSize) \ - { \ - case 1: DUMP_Print("0x%010llX: 0x%02x%14s\t%s\r\n", \ - physAddr, GET_UINT8(*(uint8_t*)addr), "", dumpSubStr); break; \ - case 2: DUMP_Print("0x%010llX: 0x%04x%12s\t%s\r\n", \ - physAddr, GET_UINT16(*(uint16_t*)addr), "", dumpSubStr); break; \ - case 4: DUMP_Print("0x%010llX: 0x%08x%8s\t%s\r\n", \ - physAddr, GET_UINT32(*(uint32_t*)addr), "", dumpSubStr); break; \ - case 8: DUMP_Print("0x%010llX: 0x%016llx\t%s\r\n", \ - physAddr, GET_UINT64(*(uint64_t*)addr), dumpSubStr); break; \ - default: DUMP_Print("Bad size %d (" #st "->" #phrase ")\r\n", dumpVarSize); \ - } \ + DUMP_Print("0x%010llX: 0x%08x%8s\t%s\r\n", \ + physAddr, GET_UINT32(*(uint32_t*)addr), "", dumpSubStr); \ } while (0) @@ -223,38 +213,15 @@ physAddress_t physAddr; \ _CREATE_DUMP_SUBSTR(phrase); \ dumpArrSize = ARRAY_SIZE((st)->phrase); \ - dumpVarSize = sizeof((st)->phrase[0]); \ - switch (dumpVarSize) \ - { \ - case 1: \ - for (dumpArrIdx=0; dumpArrIdx < dumpArrSize; dumpArrIdx++) { \ - physAddr = XX_VirtToPhys((void *)&((st)->phrase[dumpArrIdx])); \ - DUMP_Print("0x%010llX: 0x%02x%14s\t%s[%d]\r\n", \ - physAddr, GET_UINT8((st)->phrase[dumpArrIdx]), "", dumpSubStr, dumpArrIdx); \ - } break; \ - case 2: \ - for (dumpArrIdx=0; dumpArrIdx < dumpArrSize; dumpArrIdx++) { \ - physAddr = XX_VirtToPhys((void *)&((st)->phrase[dumpArrIdx])); \ - DUMP_Print("0x%010llX: 0x%04x%12s\t%s[%d]\r\n", \ - physAddr, GET_UINT16((st)->phrase[dumpArrIdx]), "", dumpSubStr, dumpArrIdx); \ - } break; \ - case 4: \ - for (dumpArrIdx=0; dumpArrIdx < dumpArrSize; dumpArrIdx++) { \ - physAddr = XX_VirtToPhys((void *)&((st)->phrase[dumpArrIdx])); \ - DUMP_Print("0x%010llX: 0x%08x%8s\t%s[%d]\r\n", \ - physAddr, GET_UINT32((st)->phrase[dumpArrIdx]), "", dumpSubStr, dumpArrIdx); \ - } break; \ - case 8: \ - for (dumpArrIdx=0; dumpArrIdx < dumpArrSize; dumpArrIdx++) { \ - physAddr = XX_VirtToPhys((void *)&((st)->phrase[dumpArrIdx])); \ - DUMP_Print("0x%010llX: 0x%016llx\t%s[%d]\r\n", \ - physAddr, GET_UINT64((st)->phrase[dumpArrIdx]), dumpSubStr, dumpArrIdx); \ - } break; \ - default: DUMP_Print("Bad size %d (" #st "->" #phrase "[0])\r\n", dumpVarSize); \ + for (dumpArrIdx=0; dumpArrIdx < dumpArrSize; dumpArrIdx++) { \ + physAddr = XX_VirtToPhys((void *)&((st)->phrase[dumpArrIdx])); \ + DUMP_Print("0x%010llX: 0x%08x%8s\t%s[%d]\r\n", \ + physAddr, GET_UINT32((st)->phrase[dumpArrIdx]), "", dumpSubStr, dumpArrIdx); \ } \ } while (0) + #endif /* DEBUG_ERRORS > 0 */ diff --git a/drivers/net/ethernet/freescale/fman/inc/flib/fsl_fman.h b/drivers/net/ethernet/freescale/fman/inc/flib/fsl_fman.h index e66ad73..cec4e10 100755 --- a/drivers/net/ethernet/freescale/fman/inc/flib/fsl_fman.h +++ b/drivers/net/ethernet/freescale/fman/inc/flib/fsl_fman.h @@ -158,8 +158,7 @@ struct fman_fpm_regs { uint32_t fmfp_ee; /**< FPM Event & Mask 0xdc */ uint32_t fmfp_cev[4]; /**< FPM CPU Event 1-4 0xe0-0xef */ uint32_t res00f0[4]; /**< res 0xf0-0xff */ - uint32_t fmfp_ps[50]; /**< FPM Port Status 0x100-0x1c7 */ - uint32_t res01c8[14]; /**< res 0x1c8-0x1ff */ + uint32_t fmfp_ps[64]; /**< FPM Port Status 0x100-0x1ff */ uint32_t fmfp_clfabc; /**< FPM CLFABC 0x200 */ uint32_t fmfp_clfcc; /**< FPM CLFCC 0x204 */ uint32_t fmfp_clfaval; /**< FPM CLFAVAL 0x208 */ diff --git a/drivers/net/ethernet/freescale/fman/inc/flib/fsl_fman_port.h b/drivers/net/ethernet/freescale/fman/inc/flib/fsl_fman_port.h index 292d37d..080a23e 100755 --- a/drivers/net/ethernet/freescale/fman/inc/flib/fsl_fman_port.h +++ b/drivers/net/ethernet/freescale/fman/inc/flib/fsl_fman_port.h @@ -274,8 +274,7 @@ struct fman_port_oh_bmi_regs { uint32_t reserved0080[0x20]; /**< 0x080 - 0x0FF Reserved */ uint32_t fmbm_oebmpi[2]; /**< Buf Mngr Observed Pool Info */ uint32_t reserved0108[0x16]; /**< 0x108 - 0x15F Reserved */ - uint32_t fmbm_ocgm; /**< Observed Congestion Group Map */ - uint32_t reserved0164[0x7]; /**< 0x164 - 0x17F Reserved */ + uint32_t fmbm_ocgm[FMAN_PORT_CG_MAP_NUM]; /**< Observed Congestion Group Map */ uint32_t fmbm_ompd; /**< Observed BMan Pool Depletion */ uint32_t reserved0184[0x1F]; /**< 0x184 - 0x1FF Reserved */ uint32_t fmbm_ostc; /**< O/H Statistics Counters */ diff --git a/drivers/net/ethernet/freescale/fman/inc/ncsw_ext.h b/drivers/net/ethernet/freescale/fman/inc/ncsw_ext.h index e7964ad..8de7f5c 100644 --- a/drivers/net/ethernet/freescale/fman/inc/ncsw_ext.h +++ b/drivers/net/ethernet/freescale/fman/inc/ncsw_ext.h @@ -40,11 +40,11 @@ #ifndef __NCSW_EXT_H #define __NCSW_EXT_H -#include "memcpy_ext.h" +#include "memcpy_ext.h" -#define WRITE_BLOCK IOMemSet32 -#define COPY_BLOCK Mem2IOCpy32 +#define WRITE_BLOCK IOMemSet32 /* include memcpy_ext.h */ +#define COPY_BLOCK Mem2IOCpy32 /* include memcpy_ext.h */ #define PTR_TO_UINT(_ptr) ((uintptr_t)(_ptr)) #define UINT_TO_PTR(_val) ((void*)(uintptr_t)(_val)) @@ -52,8 +52,10 @@ #define PTR_MOVE(_ptr, _offset) (void*)((uint8_t*)(_ptr) + (_offset)) -#define WRITE_UINT8_UINT24(arg, data08, data24) WRITE_UINT32(arg,((uint32_t)(data08)<<24)|((uint32_t)(data24)&0x00FFFFFF)) -#define WRITE_UINT24_UINT8(arg, data24, data08) WRITE_UINT32(arg,((uint32_t)(data24)<< 8)|((uint32_t)(data08)&0x000000FF)) +#define WRITE_UINT8_UINT24(arg, data08, data24) \ + WRITE_UINT32(arg,((uint32_t)(data08)<<24)|((uint32_t)(data24)&0x00FFFFFF)) +#define WRITE_UINT24_UINT8(arg, data24, data08) \ + WRITE_UINT32(arg,((uint32_t)(data24)<< 8)|((uint32_t)(data08)&0x000000FF)) /* Little-Endian access macros */ @@ -94,7 +96,7 @@ /* Miscellaneous macros */ /*----------------------*/ -#define UNUSED(X) (X=X) +#define UNUSED(_x) ((void)(_x)) #define KILOBYTE 0x400UL /* 1024 */ #define MEGABYTE (KILOBYTE * KILOBYTE) /* 1024*1024 */ |