HAVE_MOVNTI really means SSE2. Also add sfence in the MOVNTI case.
Signed-off-by: Stefan Reinauer <stepan@coresystems.de> Acked-by: Patrick Georgi <patrick.georgi@coresystems.de> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@5159 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
This commit is contained in:
committed by
Stefan Reinauer
parent
3a54ac9c36
commit
a7acc515bd
@@ -1,6 +1,8 @@
|
||||
static void write_phys(unsigned long addr, unsigned long value)
|
||||
{
|
||||
#if CONFIG_HAVE_MOVNTI
|
||||
// Assembler in lib/ is very ugly. But we properly guarded
|
||||
// it so let's obey this one for now
|
||||
#if CONFIG_SSE2
|
||||
asm volatile(
|
||||
"movnti %1, (%0)"
|
||||
: /* outputs */
|
||||
@@ -50,6 +52,10 @@ static void ram_fill(unsigned long start, unsigned long stop)
|
||||
}
|
||||
write_phys(addr, addr);
|
||||
};
|
||||
#if CONFIG_SSE2
|
||||
// Needed for movnti
|
||||
asm volatile ("sfence" ::: "memory");
|
||||
#endif
|
||||
/* Display final address */
|
||||
#if CONFIG_USE_PRINTK_IN_CAR
|
||||
printk_debug("%08lx\r\nDRAM filled\r\n", addr);
|
||||
|
Reference in New Issue
Block a user