mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-04-19 19:14:28 +00:00
fix(intel): update DDR range checking for Agilex5
Update DDR range checking for Agilex when total max size of DRAM_BASE and DRAM_SIZE overflow unsigned 64bit. Change-Id: Iaecfa5daae48da0af46cc1831d10c0e6a79613c2 Signed-off-by: Sieu Mun Tang <sieu.mun.tang@intel.com> Signed-off-by: Jit Loon Lim <jit.loon.lim@intel.com>
This commit is contained in:
parent
93823fb6ec
commit
f4aaa9fd6e
1 changed files with 4 additions and 1 deletions
|
@ -280,6 +280,9 @@ static bool is_fpga_config_buffer_full(void)
|
||||||
|
|
||||||
bool is_address_in_ddr_range(uint64_t addr, uint64_t size)
|
bool is_address_in_ddr_range(uint64_t addr, uint64_t size)
|
||||||
{
|
{
|
||||||
|
uint128_t dram_max_sz = (uint128_t)DRAM_BASE + (uint128_t)DRAM_SIZE;
|
||||||
|
uint128_t dram_region_end = (uint128_t)addr + (uint128_t)size;
|
||||||
|
|
||||||
if (!addr && !size) {
|
if (!addr && !size) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -289,7 +292,7 @@ bool is_address_in_ddr_range(uint64_t addr, uint64_t size)
|
||||||
if (addr < BL31_LIMIT) {
|
if (addr < BL31_LIMIT) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (addr + size > DRAM_BASE + DRAM_SIZE) {
|
if (dram_region_end > dram_max_sz) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue