mirror of
https://github.com/u-boot/u-boot.git
synced 2025-04-20 20:04:46 +00:00
imx8m: Restrict usable memory to space below 4G boundary
Some IPs have their accessible address space restricted by the interconnect. Let's make sure U-Boot only ever uses the space below the 4G address boundary (which is 3GiB big), even when the effective available memory is bigger. We implement board_get_usable_ram_top() for all i.MX8M SoCs, as the whole family is affected by this. Signed-off-by: Frieder Schrempf <frieder.schrempf@kontron.de>
This commit is contained in:
parent
ef62fff269
commit
e27bddff4b
1 changed files with 14 additions and 0 deletions
|
@ -296,6 +296,20 @@ phys_size_t get_effective_memsize(void)
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ulong board_get_usable_ram_top(ulong total_size)
|
||||||
|
{
|
||||||
|
/*
|
||||||
|
* Some IPs have their accessible address space restricted by
|
||||||
|
* the interconnect. Let's make sure U-Boot only ever uses the
|
||||||
|
* space below the 4G address boundary (which is 3GiB big),
|
||||||
|
* even when the effective available memory is bigger.
|
||||||
|
*/
|
||||||
|
if (PHYS_SDRAM + gd->ram_size > 0x80000000)
|
||||||
|
return 0x80000000;
|
||||||
|
|
||||||
|
return PHYS_SDRAM + gd->ram_size;
|
||||||
|
}
|
||||||
|
|
||||||
static u32 get_cpu_variant_type(u32 type)
|
static u32 get_cpu_variant_type(u32 type)
|
||||||
{
|
{
|
||||||
struct ocotp_regs *ocotp = (struct ocotp_regs *)OCOTP_BASE_ADDR;
|
struct ocotp_regs *ocotp = (struct ocotp_regs *)OCOTP_BASE_ADDR;
|
||||||
|
|
Loading…
Add table
Reference in a new issue