Message ID | 1455128582-25669-1-git-send-email-ivo.g.dimitrov.75@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
* Ivaylo Dimitrov <ivo.g.dimitrov.75@gmail.com> [160210 10:24]: > This fixed a regression with DT boot compared to legacy boot. > > Signed-off-by: Ivaylo Dimitrov <ivo.g.dimitrov.75@gmail.com> Thanks, applying into omap-for-v4.5/fixes with Pali's ack. Regards, Tony > --- > arch/arm/mach-omap2/board-generic.c | 22 +++++++++++++++++++++- > 1 file changed, 21 insertions(+), 1 deletion(-) > > diff --git a/arch/arm/mach-omap2/board-generic.c b/arch/arm/mach-omap2/board-generic.c > index 8098272..bab814d 100644 > --- a/arch/arm/mach-omap2/board-generic.c > +++ b/arch/arm/mach-omap2/board-generic.c > @@ -18,6 +18,7 @@ > > #include <asm/setup.h> > #include <asm/mach/arch.h> > +#include <asm/system_info.h> > > #include "common.h" > > @@ -77,12 +78,31 @@ static const char *const n900_boards_compat[] __initconst = { > NULL, > }; > > +/* Set system_rev from atags */ > +static void __init rx51_set_system_rev(const struct tag *tags) > +{ > + const struct tag *tag; > + > + if (tags->hdr.tag != ATAG_CORE) > + return; > + > + for_each_tag(tag, tags) { > + if (tag->hdr.tag == ATAG_REVISION) { > + system_rev = tag->u.revision.rev; > + break; > + } > + } > +} > + > /* Legacy userspace on Nokia N900 needs ATAGS exported in /proc/atags, > * save them while the data is still not overwritten > */ > static void __init rx51_reserve(void) > { > - save_atags((const struct tag *)(PAGE_OFFSET + 0x100)); > + const struct tag *tags = (const struct tag *)(PAGE_OFFSET + 0x100); > + > + save_atags(tags); > + rx51_set_system_rev(tags); > omap_reserve(); > } > > -- > 1.9.1 >
diff --git a/arch/arm/mach-omap2/board-generic.c b/arch/arm/mach-omap2/board-generic.c index 8098272..bab814d 100644 --- a/arch/arm/mach-omap2/board-generic.c +++ b/arch/arm/mach-omap2/board-generic.c @@ -18,6 +18,7 @@ #include <asm/setup.h> #include <asm/mach/arch.h> +#include <asm/system_info.h> #include "common.h" @@ -77,12 +78,31 @@ static const char *const n900_boards_compat[] __initconst = { NULL, }; +/* Set system_rev from atags */ +static void __init rx51_set_system_rev(const struct tag *tags) +{ + const struct tag *tag; + + if (tags->hdr.tag != ATAG_CORE) + return; + + for_each_tag(tag, tags) { + if (tag->hdr.tag == ATAG_REVISION) { + system_rev = tag->u.revision.rev; + break; + } + } +} + /* Legacy userspace on Nokia N900 needs ATAGS exported in /proc/atags, * save them while the data is still not overwritten */ static void __init rx51_reserve(void) { - save_atags((const struct tag *)(PAGE_OFFSET + 0x100)); + const struct tag *tags = (const struct tag *)(PAGE_OFFSET + 0x100); + + save_atags(tags); + rx51_set_system_rev(tags); omap_reserve(); }
This fixed a regression with DT boot compared to legacy boot. Signed-off-by: Ivaylo Dimitrov <ivo.g.dimitrov.75@gmail.com> --- arch/arm/mach-omap2/board-generic.c | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-)