i2c: imx-lpi2c: fix type char overflow issue when calculating the clock cycle
authorClark Wang <xiaoning.wang@nxp.com>
Mon, 29 May 2023 08:02:51 +0000 (16:02 +0800)
committerWolfram Sang <wsa@kernel.org>
Fri, 23 Jun 2023 10:58:24 +0000 (12:58 +0200)
Claim clkhi and clklo as integer type to avoid possible calculation
errors caused by data overflow.

Fixes: a55fa9d0e42e ("i2c: imx-lpi2c: add low power i2c bus driver")
Signed-off-by: Clark Wang <xiaoning.wang@nxp.com>
Signed-off-by: Carlos Song <carlos.song@nxp.com>
Reviewed-by: Andi Shyti <andi.shyti@kernel.org>
Signed-off-by: Wolfram Sang <wsa@kernel.org>
drivers/i2c/busses/i2c-imx-lpi2c.c

index 1af0a637d7f1414b033f5c0231c75a4ece2353bd..4d24ceb57ee7400938ac6886614012914353c204 100644 (file)
@@ -201,8 +201,8 @@ static void lpi2c_imx_stop(struct lpi2c_imx_struct *lpi2c_imx)
 /* CLKLO = I2C_CLK_RATIO * CLKHI, SETHOLD = CLKHI, DATAVD = CLKHI/2 */
 static int lpi2c_imx_config(struct lpi2c_imx_struct *lpi2c_imx)
 {
-       u8 prescale, filt, sethold, clkhi, clklo, datavd;
-       unsigned int clk_rate, clk_cycle;
+       u8 prescale, filt, sethold, datavd;
+       unsigned int clk_rate, clk_cycle, clkhi, clklo;
        enum lpi2c_imx_pincfg pincfg;
        unsigned int temp;