[PATCH 2/5] arm64: use fixmap region for permanent FDT mapping

Ard Biesheuvel ard.biesheuvel at linaro.org
Wed Mar 11 03:20:11 PDT 2015

On 11 March 2015 at 10:50, Mark Rutland <mark.rutland at arm.com> wrote:
>> >> +       /*
>> >> +        * Reserve 2 MB of virtual space for the FDT at the top of the fixmap
>> >> +        * region. Keep this at the top so it remains 2 MB aligned.
>> >> +        */
>> >
>> > We should not fix a location restriction by creating a size
>> > restriction. You could embed firmware images within a DTB (which I
>> > think PPC does).
>> >
>> The size restriction existed on arm64 before this patch, so I didn't
>> think twice about it.
>> So what would be a reasonable upper bound? We could go up to ~256 MB
>> without much trouble, but I guess that's a bit excessive, no?
> Given the existing code had the same 2MB restriction (documented in
> booting.txt), I think retaining that limitation for now is fine unless
> we have some reasonable example of a DTB approaching or exceeding 2MB.
> As far as I am aware, on arm64 we're not currently embeddeding FW images
> in the DTB passed to the kernel, and I'm not sure why we would.
> Anything that's critical to the system and requires FW should be
> initialised prior to the kernel, and if we need FW to drive a particular
> device I'd expect we'd store that in the filesystem (or perhaps
> initrd/initramfs).

I agree with Mark's observation that 2 MB seems reasonable at the
moment, but on the other hand, the code only requires minor tweaking
to make the limit configurable simply by changing the FIX_FDT_SIZE
define, so I don't mind changing that.


More information about the linux-arm-kernel mailing list