为了保留在 SoC Cortex-A9 上运行的 Linux 不使用内存,必须告知 Linux 内核的顶部是什么(最高可地址 RAM 地址)。 此地址之外的所有 RAM 地址都可用于 Linux 操作系统以外的其他用途。
最高可地址的 RAM 地址可在 U-boot 中设置,方法是添加"mem=..."Bootargs U-boot 环境变量的 Linux 启动参数。
下面是一个 U-boot 命令行命令示例,将内存顶部设置为0x3E800000 :
setenv bootargs console=ttyS0,115200 mem=1000M
请注意 , "mmcboot"、"ramboot" 和 qspiboot" U-boot 环境变量也覆盖了 bootargs 环境变量。 如果使用这些变量,则可能需要在这些变量中修改 bootarg。
默认 U-boot 环境变量定义了具有 C "uboot-socfpga\include\configs\socfpga_common.h"
头文件的 SoC。