Skip to content
  • Jonas Karlman's avatar
    rockchip: Use common bss and stack addresses on RK3308 · 41098d2e
    Jonas Karlman authored and Kever Yang's avatar Kever Yang committed
    
    
    Currently the following memory layout is typically used on RK3308:
    [    0, 256K) - SPL binary
    [ 256K,   2M) - TF-A / reserved
    [   -X,   4M) - SPL pre-reloc stack (SPL_STACK)
    [  -8K,   4M)   - pre-reloc malloc heap (SPL_SYS_MALLOC_F_LEN)
    [   4M,  +8K) - SPL bss (SPL_BSS_START_ADDR, SPL_BSS_MAX_SIZE)
    [   6M,   +X) - U-Boot proper binary (TEXT_BASE)
    [   -X,   8M) - U-Boot proper pre-reloc stack (CUSTOM_SYS_INIT_SP_ADDR)
    [  -8K,   8M)   - pre-reloc malloc heap (SYS_MALLOC_F_LEN)
    [   -X,  12M) - SPL reloc stack (SPL_STACK_R_ADDR)
    [  11M,  12M)   - reloc malloc heap (SPL_STACK_R_MALLOC_SIMPLE_LEN)
    
    SPL can safely load U-Boot proper + FDT to [6M, 8M-8K) with this layout.
    
    Migrate to use common bss, stack and malloc heap size and addresses to
    remove this size limitation and extend the malloc heap size being used.
    
    Signed-off-by: default avatarJonas Karlman <jonas@kwiboo.se>
    Reviewed-by: Kever Yang's avatarKever Yang <kever.yang@rock-chips.com>
    41098d2e