• Soby Mathew's avatar
    Refactor the xlat_tables library code · 3ca9928d
    Soby Mathew authored
    The AArch32 long descriptor format and the AArch64 descriptor format
    correspond to each other which allows possible sharing of xlat_tables
    library code between AArch64 and AArch32. This patch refactors the
    xlat_tables library code to seperate the common functionality from
    architecture specific code. Prior to this patch, all of the xlat_tables
    library code were in `lib/aarch64/xlat_tables.c` file. The refactored code
    is now in `lib/xlat_tables/` directory. The AArch64 specific programming
    for xlat_tables is in `lib/xlat_tables/aarch64/xlat_tables.c` and the rest
    of the code common to AArch64 and AArch32 is in
    `lib/xlat_tables/xlat_tables_common.c`. Also the data types used in
    xlat_tables library APIs are reworked to make it compatible between AArch64
    and AArch32.
    
    The `lib/aarch64/xlat_tables.c` file now includes the new xlat_tables
    library files to retain compatibility for existing platform ports.
    The macros related to xlat_tables library are also moved from
    `include/lib/aarch64/arch.h` to the header `include/lib/xlat_tables.h`.
    
    NOTE: THE `lib/aarch64/xlat_tables.c` FILE IS DEPRECATED AND PLATFORM PORTS
    ARE EXPECTED TO INCLUDE THE NEW XLAT_TABLES LIBRARY FILES IN THEIR MAKEFILES.
    
    Change-Id: I3d17217d24aaf3a05a4685d642a31d4d56255a0f
    3ca9928d
xlat_tables.c 5.77 KB