From da585c3c680add381662417b11cfc7d0ac310ba5 Mon Sep 17 00:00:00 2001 From: Heinrich Schuchardt Date: Sat, 9 May 2020 18:20:18 +0200 Subject: [PATCH] i2c: observe scl_count in i2c_deblock_gpio_loop() MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit When compiling with -Wtype-limits we see this error: drivers/i2c/i2c-uclass.c: In function ‘i2c_deblock_gpio_loop’: drivers/i2c/i2c-uclass.c:517:21: error: comparison of unsigned expression >= 0 is always true [-Werror=type-limits] 517 | while (scl_count-- >= 0) { | Don't loop forever. Fixes: 1f746a2c82b1 ("i2c: Make deblock delay and SCL clock configurable") Signed-off-by: Heinrich Schuchardt --- drivers/i2c/i2c-uclass.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/i2c/i2c-uclass.c b/drivers/i2c/i2c-uclass.c index 8166df7..8bc69e8 100644 --- a/drivers/i2c/i2c-uclass.c +++ b/drivers/i2c/i2c-uclass.c @@ -516,7 +516,7 @@ int i2c_deblock_gpio_loop(struct gpio_desc *sda_pin, udelay(delay); /* Toggle SCL until slave release SDA */ - while (scl_count-- >= 0) { + for (; scl_count; --scl_count) { i2c_gpio_set_pin(scl_pin, 1); udelay(delay); i2c_gpio_set_pin(scl_pin, 0); -- 2.7.4