summaryrefslogtreecommitdiff
path: root/drivers/staging/rtl8188eu
diff options
context:
space:
mode:
authorLarry Finger <Larry.Finger@lwfinger.net>2013-08-28 21:12:25 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-08-30 11:46:46 -0700
commit40fac5a1322719074312e58273392e9b652c64a1 (patch)
tree674ee1eddf7659e2dbf0b68685f18fd7a285aa29 /drivers/staging/rtl8188eu
parent351699d7ebb1e489d2ee5b51d1b4dd4cc2a822ac (diff)
staging: r8188eu: Fix compiler warnings in os_dep/ioctl_linux.c
The 0-DAY kernel build testing backend reports the following compiler warnings not shown on my compiler version/options: drivers/staging/rtl8188eu/os_dep/ioctl_linux.c: In function 'rtw_mp_efuse_get': >> drivers/staging/rtl8188eu/os_dep/ioctl_linux.c:5836:65: warning: iteration 16u invokes undefined behavior [-Waggressive-loop-optimizations] sprintf(extra, "%s%02X ", extra, pEfuseHal->fakeEfuseInitMap[i+j]); ^ drivers/staging/rtl8188eu/os_dep/ioctl_linux.c:5830:3: note: containing loop for (i = 0; i < EFUSE_MAP_SIZE; i += 16) { ^ >> drivers/staging/rtl8188eu/os_dep/ioctl_linux.c:6042:69: warning: iteration 16u invokes undefined behavior [-Waggressive-loop-optimizations] sprintf(extra, "%s %02X", extra, pEfuseHal->fakeEfuseModifiedMap[i+j]); ^ drivers/staging/rtl8188eu/os_dep/ioctl_linux.c:6036:3: note: containing loop for (i = 0; i < EFUSE_MAP_SIZE; i += 16) { ^ The problem is due to improper settings for some of the EFUSE_XXX defines such that EFUSE_MAP_SIZE was larger than the sizes of the marked arrays. Thanks to Fengguang Wu for helping me understand the root cause. Reported-by: Fengguang Wu <fengguang.wu@intel.com> Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net> Cc: Fengguang Wu <fengguang.wu@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/rtl8188eu')
-rw-r--r--drivers/staging/rtl8188eu/include/rtl8188e_hal.h2
-rw-r--r--drivers/staging/rtl8188eu/include/rtw_efuse.h2
2 files changed, 2 insertions, 2 deletions
diff --git a/drivers/staging/rtl8188eu/include/rtl8188e_hal.h b/drivers/staging/rtl8188eu/include/rtl8188e_hal.h
index fc4adb614bfe..52b280165a92 100644
--- a/drivers/staging/rtl8188eu/include/rtl8188e_hal.h
+++ b/drivers/staging/rtl8188eu/include/rtl8188e_hal.h
@@ -197,7 +197,6 @@ struct txpowerinfo24g {
};
#define EFUSE_REAL_CONTENT_LEN 512
-#define EFUSE_MAP_LEN 128
#define EFUSE_MAX_SECTION 16
#define EFUSE_IC_ID_OFFSET 506 /* For some inferior IC purpose*/
#define AVAILABLE_EFUSE_ADDR(addr) (addr < EFUSE_REAL_CONTENT_LEN)
@@ -215,6 +214,7 @@ struct txpowerinfo24g {
#define EFUSE_REAL_CONTENT_LEN_88E 256
#define EFUSE_MAP_LEN_88E 512
+#define EFUSE_MAP_LEN EFUSE_MAP_LEN_88E
#define EFUSE_MAX_SECTION_88E 64
#define EFUSE_MAX_WORD_UNIT_88E 4
#define EFUSE_IC_ID_OFFSET_88E 506
diff --git a/drivers/staging/rtl8188eu/include/rtw_efuse.h b/drivers/staging/rtl8188eu/include/rtw_efuse.h
index 4d45e1e82543..cee6b5e8b070 100644
--- a/drivers/staging/rtl8188eu/include/rtw_efuse.h
+++ b/drivers/staging/rtl8188eu/include/rtw_efuse.h
@@ -54,7 +54,7 @@ enum _EFUSE_DEF_TYPE {
#define EFUSE_MAX_SIZE 256
/* end of E-Fuse */
-#define EFUSE_MAX_MAP_LEN 256
+#define EFUSE_MAX_MAP_LEN 512
#define EFUSE_MAX_HW_SIZE 512
#define EFUSE_MAX_SECTION_BASE 16