[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <567AB5A8.4000505@gmail.com>
Date: Wed, 23 Dec 2015 16:54:32 +0200
From: Ivaylo Dimitrov <ivo.g.dimitrov.75@...il.com>
To: Russell King - ARM Linux <linux@....linux.org.uk>,
Pali Rohár <pali.rohar@...il.com>
Cc: Nicolas Pitre <nicolas.pitre@...aro.org>,
Tony Lindgren <tony@...mide.com>,
Arnd Bergmann <arnd@...db.de>,
linux-arm-kernel@...ts.infradead.org,
"devicetree@...r.kernel.org" <devicetree@...r.kernel.org>,
Laura Abbott <lauraa@...eaurora.org>,
Sebastian Reichel <sre@...ian.org>,
Will Deacon <will.deacon@....com>,
linux-kernel@...r.kernel.org, Rob Herring <robherring2@...il.com>,
Pavel Machek <pavel@....cz>,
Grant Likely <grant.likely@...aro.org>,
linux-omap@...r.kernel.org, Frank Rowand <frowand.list@...il.com>,
Andreas Färber <afaerber@...e.de>
Subject: Re: [PATCH 5/5] arm: boot: store ATAGs structure into DT
"/chosen/linux,atags" entry
Hi,
On 15.12.2015 14:20, Russell King - ARM Linux wrote:
>
> You could also just save_atags() in there, with a comment saying that
> this is a work-around for N900 which needs the ATAGs saved, and this
> is allowed in ->reserve as a special exception.
>
What about this (just to confirm I got the idea correctly, proper patch
will follow if that's the case):
diff --git a/arch/arm/mach-omap2/board-generic.c
b/arch/arm/mach-omap2/board-generic.c
index 34ff14b..8916856 100644
--- a/arch/arm/mach-omap2/board-generic.c
+++ b/arch/arm/mach-omap2/board-generic.c
@@ -83,8 +83,25 @@ static const char *const n900_boards_compat[]
__initconst = {
NULL,
};
+#ifdef CONFIG_ATAGS_PROC
+extern void save_atags(const struct tag *tags);
+
+/* 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)
+{
+ const phys_addr_t __atags_pointer = 0x100;
+
+ save_atags(phys_to_virt(__atags_pointer));
+ omap_reserve();
+}
+#else
+#define rx51_reserve omap_reserve
+#endif
+
DT_MACHINE_START(OMAP3_N900_DT, "Nokia RX-51 board")
- .reserve = omap_reserve,
+ .reserve = rx51_reserve,
.map_io = omap3_map_io,
.init_early = omap3430_init_early,
.init_machine = omap_generic_init,
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists