RE: Where to put a large bootloader-supplied device tree on ARM ?
From: David VomLehn (dvomlehn) <hidden>
Date: 2012-07-07 01:23:14
Also in:
linux-arm-kernel
The kernel *must* go where it is linked, but the FDT contains only relative references and is thus free to go anywhere. The same is true of ramdisks, which are usually placed after the kernel. How about doing the same with your FDT?
-----Original Message----- From: devicetree-discuss [mailto:devicetree-discuss- bounces+dvomlehn=cisco.com-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org] On Behalf Of Mitch Bradley Sent: Friday, July 06, 2012 5:25 PM To: linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org; devicetree- discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org Subject: Where to put a large bootloader-supplied device tree on ARM ? I'm passing a flatted device tree from OLPC's bootloader (which is a full Open Firmware implementation) to the kernel. If I put the FDT at the "traditional" address 0x100, bad things happen when the DT is larger than 16K. The FDT extends past the 0x4000 boundary and gets overwritten by the early page tables which are written at that address. I have found various places in memory where I can place it without it being overwritten, and things work, but that seems dodgy and likely to break randomly. Has there been any discussion about where large-ish FDT images should be located? _______________________________________________ devicetree-discuss mailing list devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org https://lists.ozlabs.org/listinfo/devicetree-discuss