Skip to contentSkip to conversation

pinctrl: fix loop in k210_pinconf_get_drive()

PATCH In review Dan Carpenter 4 participants 4 messages Feb 9, 2022 – Feb 11, 2022

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

PATCH 1/1 pinctrl: fix loop in k210_pinconf_get_drive()

The loop exited too early so the k210_pinconf_drive_strength[0] array element was never used.

Fixes d4c34d09ab03 ("pinctrl: Add RISC-V Canaan Kendryte K210 FPIOA driver")
---
 drivers/pinctrl/pinctrl-k210.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/pinctrl/pinctrl-k210.c +1 -1
index 49e32684dbb2..e3d03f2de7ef 100644
@@ -482,7 +482,7 @@ static int k210_pinconf_get_drive(unsigned int max_strength_ua)
 {
 	int i;
 
-	for (i = K210_PC_DRIVE_MAX; i; i--) {
+	for (i = K210_PC_DRIVE_MAX; i >= 0; i--) {
 		if (k210_pinconf_drive_strength[i] <= max_strength_ua)
 			return i;
 	}
Signature · 1 line
2.20.1
Reviewed-by on v1 1/1
#1 lore raw
Quoted 15 lines · Dan Carpenter

The loop exited too early so the k210_pinconf_drive_strength[0] array element was never used.

Fixes d4c34d09ab03 ("pinctrl: Add RISC-V Canaan Kendryte K210 FPIOA driver")
---
  drivers/pinctrl/pinctrl-k210.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
drivers/pinctrl/pinctrl-k210.c +0 -0
index 49e32684dbb2..e3d03f2de7ef 100644

drivers/pinctrl/pinctrl-k210.c static int k210_pinconf_get_drive(unsigned int max_strength_ua) · line 488

Quoted 8 lines
drivers/pinctrl/pinctrl-k210.c +1 -1
@@ -482,7 +482,7 @@ static int k210_pinconf_get_drive(unsigned int max_strength_ua)
  {
  	int i;
 
-	for (i = K210_PC_DRIVE_MAX; i; i--) {
+	for (i = K210_PC_DRIVE_MAX; i >= 0; i--) {
  		if (k210_pinconf_drive_strength[i] <= max_strength_ua)
  			return i;
  	}

_______________________________________________
linux-riscv mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/linux-riscv

Reviewed-by on v1 1/1
#2 lore raw
In reply to Dan Carpenter
Quoted 14 lines · Dan Carpenter

The loop exited too early so the k210_pinconf_drive_strength[0] array element was never used.

Fixes d4c34d09ab03 ("pinctrl: Add RISC-V Canaan Kendryte K210 FPIOA driver")
---
 drivers/pinctrl/pinctrl-k210.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/pinctrl/pinctrl-k210.c +0 -0
index 49e32684dbb2..e3d03f2de7ef 100644

drivers/pinctrl/pinctrl-k210.c static int k210_pinconf_get_drive(unsigned int max_strength_ua) · line 488

Quoted 8 lines
drivers/pinctrl/pinctrl-k210.c +1 -1
@@ -482,7 +482,7 @@ static int k210_pinconf_get_drive(unsigned int max_strength_ua)
 {
 	int i;
 
-	for (i = K210_PC_DRIVE_MAX; i; i--) {
+	for (i = K210_PC_DRIVE_MAX; i >= 0; i--) {
 		if (k210_pinconf_drive_strength[i] <= max_strength_ua)
 			return i;
 	}
Signature · 7 lines
Damien Le Moal
Western Digital Research

_______________________________________________
linux-riscv mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/linux-riscv