Skip to contentSkip to conversation

pinctrl: rockchip: Simplify for loop iteration

PATCH In review Axel Lin 3 participants 3 messages Aug 21, 2013 – Aug 22, 2013

Subsystems (2)
lore
Share & tools
lore

Axel Lin

author
#0 lore raw

PATCH 1/1 pinctrl: rockchip: Simplify for loop iteration

Just return once a match found makes the code simpler and shorter.

---
 drivers/pinctrl/pinctrl-rockchip.c | 21 ++++++---------------
 1 file changed, 6 insertions(+), 15 deletions(-)
drivers/pinctrl/pinctrl-rockchip.c +6 -15
index c22457d..64ad0c0 100644
@@ -167,18 +167,14 @@ static const inline struct rockchip_pin_group *pinctrl_name_to_group(
 					const struct rockchip_pinctrl *info,
 					const char *name)
 {
-	const struct rockchip_pin_group *grp = NULL;
 	int i;
 
 	for (i = 0; i < info->ngroups; i++) {
-		if (strcmp(info->groups[i].name, name))
-			continue;
-
-		grp = &info->groups[i];
-		break;
+		if (!strcmp(info->groups[i].name, name))
+			return &info->groups[i];
 	}
 
-	return grp;
+	return NULL;
 }
 
 /*
@@ -204,17 +200,12 @@ static struct rockchip_pin_bank *bank_num_to_bank(
 	struct rockchip_pin_bank *b = info->ctrl->pin_banks;
 	int i;
 
-	for (i = 0; i < info->ctrl->nr_banks; i++) {
+	for (i = 0; i < info->ctrl->nr_banks; i++, b++) {
 		if (b->bank_num == num)
-			break;
-
-		b++;
+			return b;
 	}
 
-	if (b->bank_num != num)
-		return ERR_PTR(-EINVAL);
-
-	return b;
+	return ERR_PTR(-EINVAL);
 }
 
 /*
Signature · 1 line
1.8.1.2
maintainer
#2 lore raw
In reply to Axel Lin

Am Mittwoch, 21. August 2013, 04:28:50 schrieb Axel Lin:

Quoted 3 lines

Just return once a match found makes the code simpler and shorter.

as I'm a bit late for an Ack it seems, I can only offer a thanks for making this nicer :-)

Heiko

Quoted 51 lines
---
 drivers/pinctrl/pinctrl-rockchip.c | 21 ++++++---------------
 1 file changed, 6 insertions(+), 15 deletions(-)
(quoted diff) +0 -0

b/drivers/pinctrl/pinctrl-rockchip.c index c22457d..64ad0c0 100644

drivers/pinctrl/pinctrl-rockchip.c +6 -15
@@ -167,18 +167,14 @@ static const inline struct rockchip_pin_group
 *pinctrl_name_to_group( const struct rockchip_pinctrl *info,
 					const char *name)
 {
-	const struct rockchip_pin_group *grp = NULL;
 	int i;
 
 	for (i = 0; i < info->ngroups; i++) {
-		if (strcmp(info->groups[i].name, name))
-			continue;
-
-		grp = &info->groups[i];
-		break;
+		if (!strcmp(info->groups[i].name, name))
+			return &info->groups[i];
 	}
 
-	return grp;
+	return NULL;
 }
 
 /*
@@ -204,17 +200,12 @@ static struct rockchip_pin_bank *bank_num_to_bank(
 	struct rockchip_pin_bank *b = info->ctrl->pin_banks;
 	int i;
 
-	for (i = 0; i < info->ctrl->nr_banks; i++) {
+	for (i = 0; i < info->ctrl->nr_banks; i++, b++) {
 		if (b->bank_num == num)
-			break;
-
-		b++;
+			return b;
 	}
 
-	if (b->bank_num != num)
-		return ERR_PTR(-EINVAL);
-
-	return b;
+	return ERR_PTR(-EINVAL);
 }
 
 /*