Skip to content

Commit

Permalink
of: use kbasename instead of open coding
Browse files Browse the repository at this point in the history
Several places in DT code open code the equivalent of kbasename.
Replace them.

The behavior for root nodes in node_name_cmp will be slightly different.
Instead of comparing "/", "" will be compared. The comparison will be
the same.

Reviewed-by: Andy Shevchenko <[email protected]>
Signed-off-by: Rob Herring <[email protected]>
  • Loading branch information
robherring committed Jun 22, 2017
1 parent 8ee8a0e commit 95e6b1f
Show file tree
Hide file tree
Showing 3 changed files with 4 additions and 7 deletions.
5 changes: 1 addition & 4 deletions drivers/of/base.c
Original file line number Diff line number Diff line change
Expand Up @@ -773,10 +773,7 @@ static struct device_node *__of_find_node_by_path(struct device_node *parent,
return NULL;

__for_each_child_of_node(parent, child) {
const char *name = strrchr(child->full_name, '/');
if (WARN(!name, "malformed device_node %s\n", child->full_name))
continue;
name++;
const char *name = kbasename(child->full_name);
if (strncmp(path, name, len) == 0 && (strlen(name) == len))
return child;
}
Expand Down
2 changes: 1 addition & 1 deletion drivers/of/platform.c
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ static void of_device_make_bus_id(struct device *dev)

/* format arguments only used if dev_name() resolves to NULL */
dev_set_name(dev, dev_name(dev) ? "%s:%s" : "%s",
strrchr(node->full_name, '/') + 1, dev_name(dev));
kbasename(node->full_name), dev_name(dev));
node = node->parent;
}
}
Expand Down
4 changes: 2 additions & 2 deletions drivers/of/resolver.c
Original file line number Diff line number Diff line change
Expand Up @@ -165,8 +165,8 @@ static int update_usages_of_a_phandle_reference(struct device_node *overlay,
static int node_name_cmp(const struct device_node *dn1,
const struct device_node *dn2)
{
const char *n1 = strrchr(dn1->full_name, '/') ? : "/";
const char *n2 = strrchr(dn2->full_name, '/') ? : "/";
const char *n1 = kbasename(dn1->full_name);
const char *n2 = kbasename(dn2->full_name);

return of_node_cmp(n1, n2);
}
Expand Down

0 comments on commit 95e6b1f

Please sign in to comment.