Thread (1 message) 1 message, 1 author, 2011-06-21

[PATCH 4/4] ARM: zImage: allow supplementing appended DTB with traditional ATAG data

From: David Brown <hidden>
Date: 2011-06-21 17:32:19
Also in: linux-devicetree

On Tue, Jun 21 2011, Shawn Guo wrote:
On Tue, Jun 21, 2011 at 01:09:15AM -0400, Nicolas Pitre wrote:
quoted
From: Nicolas Pitre <redacted>

Some old bootloaders can't be updated to a device tree capable one,
yet they provide ATAGs with memory configuration, the ramdisk address,
the kernel cmdline string, etc.  To allow a device tree enabled
kernel to be used with such bootloaders, it is necessary to convert those
ATAGs into FDT properties and fold them into the DTB appended to zImage.

Currently the following ATAGs are converted:

	ATAG_CMDLINE
	ATAG_MEM (up to 8 memory regions)
	ATAG_INITRD2

If the corresponding information already exists in the appended DTB, it
is replaced, otherwise the required node is created to hold it.

The code looks for ATAGs at the location pointed by the value of r2 upon
entry into the zImage code.  If no ATAGs are found there, an attempt at
finding ATAGs at the typical 0x100 offset from start of RAM is made.
Otherwise the DTB is left unchanged.

Thisstarted from an older patch from John Bonesio [off-list ref],
with contributions from David Brown [off-list ref].

Signed-off-by: Nicolas Pitre <redacted>
---
With this patch applied, I saw nothing coming from kernel on imx51
babbage serial port.
Can you try seeing if it works with padding in the DTB that you are
using?  Right now, I'm using something like:

/ {
	...
	memory {
		reg = <0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0>;
	};
	chosen {
		bootargs = "                              "; /* Enough for arg */
		linux,initrd-start = <0>;
		linux,initrd-end = <0>;
	};
};

I get problems if the fdt code tries to expand the tree, even if I add
padding when running the dtc (I've tried -p 1024).

Hopefully, I'll get some time today to try and figure out what is going
on.

David

-- 
Sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help