Skip to content
  • Tomi Valkeinen's avatar
    OMAP: DSS: VRAM: Align start & size of vram to 2M · 4422c04b
    Tomi Valkeinen authored
    
    
    Align the start address and size of VRAM area to 2M as per comments from
    Russell King:
    
    > > So, why SZ_2M?
    >
    > Firstly, that's the granularity which we allocate page tables - one
    > Linux page table covers 2MB of memory.  We want to avoid creating page
    > tables for the main memory mapping as that increases TLB pressure through
    > the use of additional TLB entries, and more page table walks.
    >
    > Plus, we never used to allow the kernel's direct memory mapping to be
    > mapped at anything less than section size - this restriction has since
    > been lifted due to OMAP SRAM problems, but I'd rather we stuck with it
    > to ensure that we have proper behaviour from all parts of the system.
    >
    > Secondly, we don't want to end up with lots of fragmentation at the end
    > of the memory mapping as that'll reduce performance, not only by making
    > the pfn_valid() search more expensive.
    >
    > Emsuring a minimum allocation size and alignment makes sure that the
    > regions can be coalesced together into one block, and minimises run-time
    > expenses.
    >
    > So please, 2MB, or if you object, at the _very_ _least_ 1MB.  But
    > definitely not PAGE_SIZE.
    
    Signed-off-by: default avatarTomi Valkeinen <tomi.valkeinen@nokia.com>
    Acked-by: default avatarTony Lindgren <tony@atomide.com>
    4422c04b