[PATCH] ARM: document the bigger pagetables needed for LPAE

Javi Merino javi.merino at arm.com
Tue May 28 06:49:52 EDT 2013


On Sun, May 26, 2013 at 01:27:52AM +0100, Rob Landley wrote:
> On 05/24/2013 10:43:56 AM, Javi Merino wrote:
> > The Booting documentation assumes that the initial pagetables are
> > 16KiB but since 1b6ba46 (ARM: LPAE: MMU setup for the 3-level page
> > table format) they are 20KiB for LPAE kernels.  Thus, the
> > recommendation to put atags or the dtb in the first 16KiB is wrong,
> > there's only 12KiB of space there in LPAE kernels, so update the
> > documentation accordingly.
> > ---
> >  Documentation/arm/Booting |    9 +++++----
> >  1 file changed, 5 insertions(+), 4 deletions(-)
> 
> Acked-by: Rob Landley <rob at landley.net>

Thanks.  As Catalin pointed out, I'm missing my SoB.

> With one comment:
> 
> > diff --git a/Documentation/arm/Booting b/Documentation/arm/Booting
> > index 0c1f475..f6f9cd8 100644
> > --- a/Documentation/arm/Booting
> > +++ b/Documentation/arm/Booting
> > @@ -105,7 +105,7 @@ The tagged list should be stored in system RAM.
> > 
> >  The tagged list must be placed in a region of memory where neither
> >  the kernel decompressor nor initrd 'bootp' program will overwrite
> > -it.  The recommended placement is in the first 16KiB of RAM.
> > +it.  The recommended placement is in the first 12KiB of RAM.
> > 
> >  4b. Setup the device tree
> >  -------------------------
> > @@ -120,7 +120,7 @@ tagged list.
> >  The boot loader must pass at a minimum the size and location of the
> >  system memory, and the root filesystem location.  The dtb must be
> >  placed in a region of memory where the kernel decompressor will not
> > -overwrite it.  The recommended placement is in the first 16KiB of RAM
> > +overwrite it.  The recommended placement is in the first 12KiB of RAM
> >  with the caveat that it may not be located at physical address 0  
> > since
> >  the kernel interprets a value of 0 in r2 to mean neither a tagged  
> > list
> >  nor a dtb were passed.
> > @@ -137,8 +137,9 @@ then it is legal for the boot loader to call the  
> > zImage in flash
> >  directly.
> > 
> >  The zImage may also be placed in system RAM (at any location) and
> > -called there.  Note that the kernel uses 16K of RAM below the image
> > -to store page tables.  The recommended placement is 32KiB into RAM.
> > +called there.  Note that the kernel may use up to 20KiB of RAM below
> > +the image to store page tables.  The recommended placement is 32KiB
> > +into RAM.
> 
> Now that we have three memory entires, possibly some sort of memory  
> layout would be in order?
> 
>     0k-12k   boot data (tagged list or device tree)
>    12k-32k   page tables
>    32k-xxx   kernel image
> 
> Perhaps at the end of section 4's introduction? It's not quite obvious  
> from the document...

Sounds like a good idea, I'll add it and send a v2.

Cheers,
Javi




More information about the linux-arm-kernel mailing list