Skip to content

Commit

Permalink
pinctrl: Move for_each_maps() to namespace and hide iterator inside
Browse files Browse the repository at this point in the history
First of all, while for_each_maps() is private to pin control subsystem
it's still better to have it put into a namespace.

Besides that, users are not relying on iterator variable, so hide it
inside for-loop.

Signed-off-by: Andy Shevchenko <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Linus Walleij <[email protected]>
  • Loading branch information
andy-shev authored and linusw committed Nov 14, 2022
1 parent 5a00473 commit 06de519
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 9 deletions.
6 changes: 2 additions & 4 deletions drivers/pinctrl/core.c
Original file line number Diff line number Diff line change
Expand Up @@ -1029,7 +1029,6 @@ static struct pinctrl *create_pinctrl(struct device *dev,
struct pinctrl *p;
const char *devname;
struct pinctrl_maps *maps_node;
int i;
const struct pinctrl_map *map;
int ret;

Expand All @@ -1055,7 +1054,7 @@ static struct pinctrl *create_pinctrl(struct device *dev,

mutex_lock(&pinctrl_maps_mutex);
/* Iterate over the pin control maps to locate the right ones */
for_each_maps(maps_node, i, map) {
for_each_pin_map(maps_node, map) {
/* Map must be for this device */
if (strcmp(map->dev_name, devname))
continue;
Expand Down Expand Up @@ -1806,13 +1805,12 @@ static inline const char *map_type(enum pinctrl_map_type type)
static int pinctrl_maps_show(struct seq_file *s, void *what)
{
struct pinctrl_maps *maps_node;
int i;
const struct pinctrl_map *map;

seq_puts(s, "Pinctrl maps:\n");

mutex_lock(&pinctrl_maps_mutex);
for_each_maps(maps_node, i, map) {
for_each_pin_map(maps_node, map) {
seq_printf(s, "device %s\nstate %s\ntype %s (%d)\n",
map->dev_name, map->name, map_type(map->type),
map->type);
Expand Down
10 changes: 5 additions & 5 deletions drivers/pinctrl/core.h
Original file line number Diff line number Diff line change
Expand Up @@ -252,8 +252,8 @@ extern int pinctrl_force_default(struct pinctrl_dev *pctldev);
extern struct mutex pinctrl_maps_mutex;
extern struct list_head pinctrl_maps;

#define for_each_maps(_maps_node_, _i_, _map_) \
list_for_each_entry(_maps_node_, &pinctrl_maps, node) \
for (_i_ = 0, _map_ = &_maps_node_->maps[_i_]; \
_i_ < _maps_node_->num_maps; \
_i_++, _map_ = &_maps_node_->maps[_i_])
#define for_each_pin_map(_maps_node_, _map_) \
list_for_each_entry(_maps_node_, &pinctrl_maps, node) \
for (unsigned int __i = 0; \
__i < _maps_node_->num_maps && (_map_ = &_maps_node_->maps[__i]); \
__i++)

0 comments on commit 06de519

Please sign in to comment.