From aaf7cec2769942035985716452107fc5ba0b11f6 Mon Sep 17 00:00:00 2001 From: "David S. Miller" Date: Wed, 21 Jun 2006 16:33:54 -0700 Subject: [SPARC64]: Add of_find_node_by_{name,type}(). Signed-off-by: David S. Miller --- arch/sparc64/kernel/prom.c | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'arch/sparc64') diff --git a/arch/sparc64/kernel/prom.c b/arch/sparc64/kernel/prom.c index c99b7aae19d..fd46e94ce06 100644 --- a/arch/sparc64/kernel/prom.c +++ b/arch/sparc64/kernel/prom.c @@ -63,6 +63,32 @@ struct device_node *of_find_node_by_path(const char *path) return np; } +struct device_node *of_find_node_by_name(struct device_node *from, + const char *name) +{ + struct device_node *np; + + np = from ? from->allnext : allnodes; + for (; np != NULL; np = np->allnext) + if (np->name != NULL && strcmp(np->name, name) == 0) + break; + + return np; +} + +struct device_node *of_find_node_by_type(struct device_node *from, + const char *type) +{ + struct device_node *np; + + np = from ? from->allnext : allnodes; + for (; np != 0; np = np->allnext) + if (np->type != 0 && strcmp(np->type, type) == 0) + break; + + return np; +} + struct property *of_find_property(struct device_node *np, const char *name, int *lenp) { -- cgit v1.2.3