public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot] [PATCH 1/6] x86: Support machines with >4GB of RAM
@ 2015-02-11  1:59 Simon Glass
  2015-02-11  1:59 ` [U-Boot] [PATCH 2/6] x86: video: Allow keyboard presence to be controlled by device tree Simon Glass
                   ` (5 more replies)
  0 siblings, 6 replies; 17+ messages in thread
From: Simon Glass @ 2015-02-11  1:59 UTC (permalink / raw)
  To: u-boot

Some systems have more than 4GB of RAM. U-Boot can only place things below
4GB so any memory above that should not be used. Ignore any such memory so
that the memory size will not exceed the maximum.

This prevents gd->ram_size exceeding 4GB which causes problems for PCI
devices which use DMA.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 arch/x86/cpu/coreboot/sdram.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/arch/x86/cpu/coreboot/sdram.c b/arch/x86/cpu/coreboot/sdram.c
index e98a230..9c3ab81 100644
--- a/arch/x86/cpu/coreboot/sdram.c
+++ b/arch/x86/cpu/coreboot/sdram.c
@@ -90,7 +90,8 @@ int dram_init(void)
 		struct memrange *memrange = &lib_sysinfo.memrange[i];
 		unsigned long long end = memrange->base + memrange->size;
 
-		if (memrange->type == CB_MEM_RAM && end > ram_size)
+		if (memrange->type == CB_MEM_RAM && end > ram_size &&
+		    memrange->base < (1ULL << 32))
 			ram_size = end;
 	}
 	gd->ram_size = ram_size;
@@ -108,7 +109,8 @@ void dram_init_banksize(void)
 		for (i = 0, j = 0; i < lib_sysinfo.n_memranges; i++) {
 			struct memrange *memrange = &lib_sysinfo.memrange[i];
 
-			if (memrange->type == CB_MEM_RAM) {
+			if (memrange->type == CB_MEM_RAM &&
+			    memrange->base < (1ULL << 32)) {
 				gd->bd->bi_dram[j].start = memrange->base;
 				gd->bd->bi_dram[j].size = memrange->size;
 				j++;
-- 
2.2.0.rc0.207.ga3a616c

^ permalink raw reply related	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2015-02-26  2:44 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-02-11  1:59 [U-Boot] [PATCH 1/6] x86: Support machines with >4GB of RAM Simon Glass
2015-02-11  1:59 ` [U-Boot] [PATCH 2/6] x86: video: Allow keyboard presence to be controlled by device tree Simon Glass
2015-02-11  7:57   ` Anatolij Gustschin
2015-02-11  1:59 ` [U-Boot] [PATCH 3/6] x86: spi: Add support for lynxpoint Simon Glass
2015-02-17  9:38   ` Jagan Teki
2015-02-25  7:11   ` Bin Meng
2015-02-25  7:18     ` Bin Meng
2015-02-11  1:59 ` [U-Boot] [PATCH 4/6] x86: Move common Chromebook config into a separate file Simon Glass
2015-02-25  7:17   ` Bin Meng
2015-02-11  1:59 ` [U-Boot] [PATCH 5/6] x86: pci: Add PCI IDs for lynxpoint Simon Glass
2015-02-25  7:20   ` Bin Meng
2015-02-11  1:59 ` [U-Boot] [PATCH 6/6] x86: Add support for panther (Asus Chromebox) Simon Glass
2015-02-25  7:32   ` Bin Meng
2015-02-26  0:55     ` Simon Glass
2015-02-25  7:10 ` [U-Boot] [PATCH 1/6] x86: Support machines with >4GB of RAM Bin Meng
2015-02-26  0:55   ` Simon Glass
2015-02-26  2:44     ` Bin Meng

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox