Skip to content
Snippets Groups Projects
Forked from Reform / reform-boundary-uboot
Source project has a limited visibility.
  • Stephen Warren's avatar
    1e4d11a5
    common: board: support systems with where RAM ends beyond 4GB · 1e4d11a5
    Stephen Warren authored
    
    Some systems have so much RAM that the end of RAM is beyond 4GB. An
    example would be a Tegra124 system (where RAM starts at 2GB physical)
    that has more than 2GB of RAM.
    
    In this case, we can gd->ram_size to represent the actual RAM size, so
    that the actual RAM size is passed to the OS. This is useful if the OS
    implements LPAE, and can actually use the "extra" RAM.
    
    However, U-Boot does not implement LPAE and so must deal with 32-bit
    physical addresses. To this end, we enhance board_get_usable_ram_top() to
    detect the "over-sized" case, and limit the relocation addres so that it
    fits into 32-bits of physical address space.
    
    Signed-off-by: default avatarStephen Warren <swarren@nvidia.com>
    Reviewed-by: default avatarSimon Glass <sjg@chromium.org>
    Signed-off-by: default avatarTom Warren <twarren@nvidia.com>
    1e4d11a5
    History
    common: board: support systems with where RAM ends beyond 4GB
    Stephen Warren authored
    
    Some systems have so much RAM that the end of RAM is beyond 4GB. An
    example would be a Tegra124 system (where RAM starts at 2GB physical)
    that has more than 2GB of RAM.
    
    In this case, we can gd->ram_size to represent the actual RAM size, so
    that the actual RAM size is passed to the OS. This is useful if the OS
    implements LPAE, and can actually use the "extra" RAM.
    
    However, U-Boot does not implement LPAE and so must deal with 32-bit
    physical addresses. To this end, we enhance board_get_usable_ram_top() to
    detect the "over-sized" case, and limit the relocation addres so that it
    fits into 32-bits of physical address space.
    
    Signed-off-by: default avatarStephen Warren <swarren@nvidia.com>
    Reviewed-by: default avatarSimon Glass <sjg@chromium.org>
    Signed-off-by: default avatarTom Warren <twarren@nvidia.com>