Update imx platform to not rely on undefined overflow behaviour
authorJustin Chadwell <justin.chadwell@arm.com>
Wed, 3 Jul 2019 13:14:22 +0000 (14:14 +0100)
committerJustin Chadwell <justin.chadwell@arm.com>
Fri, 12 Jul 2019 08:12:19 +0000 (09:12 +0100)
This consists of ensuring that the left operand of each shift is
unsigned when the operation might overflow into the sign bit.

Change-Id: Ia0a10b4a30e63c0cbf1d0f8dfe5768e0a93ae1c7
Signed-off-by: Justin Chadwell <justin.chadwell@arm.com>
plat/imx/common/sci/imx8_mu.h

index edcac7bf3d0ce29d5f64ab2749428641e0fb6764..7885219b70a161de80a367db7ca591671c52f132 100644 (file)
@@ -13,7 +13,7 @@
 #define MU_TR_COUNT1           4
 #define MU_RR_COUNT1           4
 
-#define MU_CR_GIEn_MASK1       (0xF << 28)
+#define MU_CR_GIEn_MASK1       (0xFu << 28)
 #define MU_CR_RIEn_MASK1       (0xF << 24)
 #define MU_CR_TIEn_MASK1       (0xF << 20)
 #define MU_CR_GIRn_MASK1       (0xF << 16)
@@ -23,7 +23,7 @@
 #define MU_SR_TE0_MASK1                (1 << 23)
 #define MU_SR_RF0_MASK1                (1 << 27)
 #define MU_CR_RIE0_MASK1       (1 << 27)
-#define MU_CR_GIE0_MASK1       (1 << 31)
+#define MU_CR_GIE0_MASK1       (1U << 31)
 
 #define MU_TR_COUNT                    4
 #define MU_RR_COUNT                    4