Skip to contentSkip to conversation

gpio: pcie-idio-24: Fix off-by-one error in get_multiple loop

PATCH In review William Breathitt Gray 2 participants 2 messages Apr 20, 2018 – Apr 30, 2018

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 gpio: pcie-idio-24: Fix off-by-one error in get_multiple loop

The PCIe-IDIO-24 features 8 bits of TTL GPIO which may be configured for output or input. This patch fixes an off-by-one error in the loop conditional for the get_multiple callback so that the TTL GPIO are handled.

Fixes ca37081595a2 ("gpio: pcie-idio-24: Implement get_multiple/set_multiple callbacks")
---
 drivers/gpio/gpio-pcie-idio-24.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/gpio/gpio-pcie-idio-24.c +1 -1
index 835607ecf658..32bcbd9a52aa 100644
@@ -217,7 +217,7 @@ static int idio_24_gpio_get_multiple(struct gpio_chip *chip,
 	bitmap_zero(bits, chip->ngpio);
 
 	/* get bits are evaluated a gpio port register at a time */
-	for (i = 0; i < ARRAY_SIZE(ports); i++) {
+	for (i = 0; i < ARRAY_SIZE(ports) + 1; i++) {
 		/* gpio offset in bits array */
 		bits_offset = i * gpio_reg_size;
 
Signature · 1 line
2.16.2
#1 lore raw
Quoted 7 lines · William Breathitt Gray

The PCIe-IDIO-24 features 8 bits of TTL GPIO which may be configured for output or input. This patch fixes an off-by-one error in the loop conditional for the get_multiple callback so that the TTL GPIO are handled.

Fixes ca37081595a2 ("gpio: pcie-idio-24: Implement get_multiple/set_multiple callbacks")

Patch applied for fixes.

Yours,
Linus Walleij