Message ID | 53FDE6A3.3080303@freescale.com (mailing list archive) |
---|---|
State | Not Applicable |
Headers | show |
On Wed, 27 Aug 2014 17:09:39 +0300, Laurentiu Tudor <b10716@freescale.com> wrote: > Simply swap of_alias and of_chosen initialization so > that of_alias ends up read first. This must be done > because it is accessed couple of lines below when > trying to initialize the of_stdout using the alias > based legacy method. > > [Fixes a752ee5 - tty: Update hypervisor tty drivers to > use core stdout parsing code] > > Signed-off-by: Laurentiu Tudor <Laurentiu.Tudor@freescale.com> > Cc: Grant Likely <grant.likely@linaro.org> > --- > drivers/of/base.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/drivers/of/base.c b/drivers/of/base.c > index d8574ad..52f8506 100644 > --- a/drivers/of/base.c > +++ b/drivers/of/base.c > @@ -1847,6 +1847,10 @@ void of_alias_scan(void * (*dt_alloc)(u64 size, u64 align)) > { > struct property *pp; > > + of_aliases = of_find_node_by_path("/aliases"); > + if (!of_aliases) > + return; > + > of_chosen = of_find_node_by_path("/chosen"); > if (of_chosen == NULL) > of_chosen = of_find_node_by_path("/chosen@0"); > @@ -1862,10 +1866,6 @@ void of_alias_scan(void * (*dt_alloc)(u64 size, u64 align)) > of_stdout = of_find_node_by_path(name); > } > > - of_aliases = of_find_node_by_path("/aliases"); > - if (!of_aliases) > - return; > - Close, but not quite. The 'if (!of_aliases)' test should not be moved. Only the search for of_find_node_by_path(). I've fixed it up and applied. g. > for_each_property_of_node(of_aliases, pp) { > const char *start = pp->name; > const char *end = start + strlen(start); > -- > 1.8.3.1
On 09/08/2014 04:29 PM, Grant Likely wrote: > On Wed, 27 Aug 2014 17:09:39 +0300, Laurentiu Tudor <b10716@freescale.com> wrote: >> Simply swap of_alias and of_chosen initialization so >> that of_alias ends up read first. This must be done >> because it is accessed couple of lines below when >> trying to initialize the of_stdout using the alias >> based legacy method. >> >> [Fixes a752ee5 - tty: Update hypervisor tty drivers to >> use core stdout parsing code] >> >> Signed-off-by: Laurentiu Tudor <Laurentiu.Tudor@freescale.com> >> Cc: Grant Likely <grant.likely@linaro.org> >> --- >> drivers/of/base.c | 8 ++++---- >> 1 file changed, 4 insertions(+), 4 deletions(-) >> >> diff --git a/drivers/of/base.c b/drivers/of/base.c >> index d8574ad..52f8506 100644 >> --- a/drivers/of/base.c >> +++ b/drivers/of/base.c >> @@ -1847,6 +1847,10 @@ void of_alias_scan(void * (*dt_alloc)(u64 size, u64 align)) >> { >> struct property *pp; >> >> + of_aliases = of_find_node_by_path("/aliases"); >> + if (!of_aliases) >> + return; >> + >> of_chosen = of_find_node_by_path("/chosen"); >> if (of_chosen == NULL) >> of_chosen = of_find_node_by_path("/chosen@0"); >> @@ -1862,10 +1866,6 @@ void of_alias_scan(void * (*dt_alloc)(u64 size, u64 align)) >> of_stdout = of_find_node_by_path(name); >> } >> >> - of_aliases = of_find_node_by_path("/aliases"); >> - if (!of_aliases) >> - return; >> - > > Close, but not quite. The 'if (!of_aliases)' test should not be moved. > Only the search for of_find_node_by_path(). Eek, completely missed this. Sorry. > I've fixed it up and applied. Thanks! --- Best Regards, Laurentiu
diff --git a/drivers/of/base.c b/drivers/of/base.c index d8574ad..52f8506 100644 --- a/drivers/of/base.c +++ b/drivers/of/base.c @@ -1847,6 +1847,10 @@ void of_alias_scan(void * (*dt_alloc)(u64 size, u64 align)) { struct property *pp; + of_aliases = of_find_node_by_path("/aliases"); + if (!of_aliases) + return; + of_chosen = of_find_node_by_path("/chosen"); if (of_chosen == NULL) of_chosen = of_find_node_by_path("/chosen@0"); @@ -1862,10 +1866,6 @@ void of_alias_scan(void * (*dt_alloc)(u64 size, u64 align)) of_stdout = of_find_node_by_path(name); } - of_aliases = of_find_node_by_path("/aliases"); - if (!of_aliases) - return; - for_each_property_of_node(of_aliases, pp) { const char *start = pp->name; const char *end = start + strlen(start);
Simply swap of_alias and of_chosen initialization so that of_alias ends up read first. This must be done because it is accessed couple of lines below when trying to initialize the of_stdout using the alias based legacy method. [Fixes a752ee5 - tty: Update hypervisor tty drivers to use core stdout parsing code] Signed-off-by: Laurentiu Tudor <Laurentiu.Tudor@freescale.com> Cc: Grant Likely <grant.likely@linaro.org> --- drivers/of/base.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)