Intel e7505: provide get_top_of_ram

This is required to enable EARLY_CBMEM_INIT.

Change-Id: I6d8caf382aa48eded81c1e94bbbcd3975ea88a1a
Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Reviewed-on: http://review.coreboot.org/2550
Tested-by: build bot (Jenkins)
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
This commit is contained in:
Kyösti Mälkki 2012-07-03 11:36:44 +03:00 committed by Marc Jones
parent 5a22b14d47
commit 41dd3dbd5e
2 changed files with 7 additions and 0 deletions

View File

@ -1889,6 +1889,12 @@ void e7505_mch_init(const struct mem_controller *memctrl)
sdram_enable(memctrl); sdram_enable(memctrl);
} }
unsigned long get_top_of_ram(void)
{
u32 tolm = (pci_read_config16(MCHDEV, TOLM) & ~0x7ff) << 16;
return (unsigned long) tolm;
}
/** /**
* Scrub and reset error counts for ECC dimms. * Scrub and reset error counts for ECC dimms.
* *

View File

@ -20,6 +20,7 @@ void e7505_mch_scrub_ecc(unsigned long ret_addr);
void e7505_mch_done(const struct mem_controller *memctrl); void e7505_mch_done(const struct mem_controller *memctrl);
int e7505_mch_is_ready(void); int e7505_mch_is_ready(void);
unsigned long get_top_of_ram(void);
/* Mainboard exports this. */ /* Mainboard exports this. */
int spd_read_byte(unsigned device, unsigned address); int spd_read_byte(unsigned device, unsigned address);