diff options
Diffstat (limited to 'drivers/pinctrl/pinconf.c')
-rw-r--r-- | drivers/pinctrl/pinconf.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/pinctrl/pinconf.c b/drivers/pinctrl/pinconf.c index 57dbb4b478db..1259872b0a1d 100644 --- a/drivers/pinctrl/pinconf.c +++ b/drivers/pinctrl/pinconf.c | |||
@@ -230,17 +230,18 @@ static void pinconf_dump_pin(struct pinctrl_dev *pctldev, | |||
230 | static int pinconf_pins_show(struct seq_file *s, void *what) | 230 | static int pinconf_pins_show(struct seq_file *s, void *what) |
231 | { | 231 | { |
232 | struct pinctrl_dev *pctldev = s->private; | 232 | struct pinctrl_dev *pctldev = s->private; |
233 | unsigned pin; | 233 | unsigned i, pin; |
234 | 234 | ||
235 | seq_puts(s, "Pin config settings per pin\n"); | 235 | seq_puts(s, "Pin config settings per pin\n"); |
236 | seq_puts(s, "Format: pin (name): pinmux setting array\n"); | 236 | seq_puts(s, "Format: pin (name): pinmux setting array\n"); |
237 | 237 | ||
238 | /* The highest pin number need to be included in the loop, thus <= */ | 238 | /* The pin number can be retrived from the pin controller descriptor */ |
239 | for (pin = 0; pin <= pctldev->desc->maxpin; pin++) { | 239 | for (i = 0; pin < pctldev->desc->npins; i++) { |
240 | struct pin_desc *desc; | 240 | struct pin_desc *desc; |
241 | 241 | ||
242 | pin = pctldev->desc->pins[i].number; | ||
242 | desc = pin_desc_get(pctldev, pin); | 243 | desc = pin_desc_get(pctldev, pin); |
243 | /* Pin space may be sparse */ | 244 | /* Skip if we cannot search the pin */ |
244 | if (desc == NULL) | 245 | if (desc == NULL) |
245 | continue; | 246 | continue; |
246 | 247 | ||