• A
    arm64: Make full va map code more dynamic · 5e2ec773
    Alexander Graf 提交于
    The idea to generate our pages tables from an array of memory ranges
    is very sound. However, instead of hard coding the code to create up
    to 2 levels of 64k granule page tables, we really should just create
    normal 4k page tables that allow us to set caching attributes on 2M
    or 4k level later on.
    
    So this patch moves the full_va mapping code to 4k page size and
    makes it fully flexible to dynamically create as many levels as
    necessary for a map (including dynamic 1G/2M pages). It also adds
    support to dynamically split a large map into smaller ones when
    some code wants to set dcache attributes.
    
    With all this in place, there is very little reason to create your
    own page tables in board specific files.
    Signed-off-by: NAlexander Graf <agraf@suse.de>
    5e2ec773
cache_v8.c 16.6 KB