On Tue, 2014-11-25 at 15:20 +0000, Grant Likely wrote: > On Tue, Nov 25, 2014 at 3:15 PM, Leif Lindholm <leif.lindholm@xxxxxxxxxx> wrote: > > On Tue, Nov 25, 2014 at 02:58:54PM +0000, Grant Likely wrote: > >> > + len = strchrnul(path, ':') - path; > >> > + > >> > for_each_property_of_node(of_aliases, pp) { > >> > if (strlen(pp->name) == len && !strncmp(pp->name, path, len)) { > >> > np = of_find_node_by_path(pp->value); > >> > >> Can you add a testcase to drivers/of/unittests.c for this new path > >> parsing? Then we know it's correct! > > > > Will do. > > > >> > @@ -1830,8 +1835,12 @@ void of_alias_scan(void * (*dt_alloc)(u64 size, u64 align)) > >> > name = of_get_property(of_chosen, "linux,stdout-path", NULL); > >> > if (IS_ENABLED(CONFIG_PPC) && !name) > >> > name = of_get_property(of_aliases, "stdout", NULL); > >> > - if (name) > >> > + if (name) { > >> > of_stdout = of_find_node_by_path(name); > >> > + of_stdout_options = strchr(name, ':'); > >> > + if (of_stdout_options != NULL) > >> > + of_stdout_options++; > >> > + } > >> > >> Not so good. The ':' should actually be a generic part of > >> of_find_node_by_path(), it doesn't have to be limited to stdout parsing. > >> There are other places that would use it. I would add a second, > >> optional, argument to of_find_node_by_path() that will update a pointer > >> to the arguments after the ':'. > > > > So, I agree this would be nicer... > > > > However, I'm counting 157 callers of this function outside of > > drivers/of and 43 inside. Any chance you'd let me get away with a > > separate of_find_extra_options_by_path()? > > I'd rather not. It is a trivial change and can be pretty much done > mechanically. Something like (I think; I always have to look up the > sed syntax): > > sed s/of_find_node_by_path\((.*)\)/of_find_node_by_path\(\1, NULL\) Coccinelle rules for this sort of transformation... Ian. -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html