diff options
author | Stefan Reinauer <stepan@coresystems.de> | 2009-09-23 18:51:03 +0000 |
---|---|---|
committer | Stefan Reinauer <stepan@openbios.org> | 2009-09-23 18:51:03 +0000 |
commit | c13093b1484565382bd5e00722149442e46635ee (patch) | |
tree | a819bd3d19560221155eeb5a8cb58149737131be /src/ram/ramtest.c | |
parent | a946214ea09d4ca89a575525d0ae0469526e7dcc (diff) |
simplify source tree hierarchy: move files from sdram/ and ram/ to lib/
It's only three files. Also fix up all the paths (Gotta love included C files)
Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Ronald G. Minnich <rminnich@gmail.com>
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4661 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'src/ram/ramtest.c')
-rw-r--r-- | src/ram/ramtest.c | 161 |
1 files changed, 0 insertions, 161 deletions
diff --git a/src/ram/ramtest.c b/src/ram/ramtest.c deleted file mode 100644 index 9f329ef51b..0000000000 --- a/src/ram/ramtest.c +++ /dev/null @@ -1,161 +0,0 @@ -static void write_phys(unsigned long addr, unsigned long value) -{ -#if CONFIG_HAVE_MOVNTI - asm volatile( - "movnti %1, (%0)" - : /* outputs */ - : "r" (addr), "r" (value) /* inputs */ -#ifndef __GNUC__ - : /* clobbers */ -#endif - ); -#else - volatile unsigned long *ptr; - ptr = (void *)addr; - *ptr = value; -#endif -} - -static unsigned long read_phys(unsigned long addr) -{ - volatile unsigned long *ptr; - ptr = (void *)addr; - return *ptr; -} - -static void ram_fill(unsigned long start, unsigned long stop) -{ - unsigned long addr; - /* - * Fill. - */ -#if CONFIG_USE_PRINTK_IN_CAR - printk_debug("DRAM fill: 0x%08x-0x%08x\r\n", start, stop); -#else - print_debug("DRAM fill: "); - print_debug_hex32(start); - print_debug("-"); - print_debug_hex32(stop); - print_debug("\r\n"); -#endif - for(addr = start; addr < stop ; addr += 4) { - /* Display address being filled */ - if (!(addr & 0xfffff)) { -#if CONFIG_USE_PRINTK_IN_CAR - printk_debug("%08x \r", addr); -#else - print_debug_hex32(addr); - print_debug(" \r"); -#endif - } - write_phys(addr, addr); - }; - /* Display final address */ -#if CONFIG_USE_PRINTK_IN_CAR - printk_debug("%08x\r\nDRAM filled\r\n", addr); -#else - print_debug_hex32(addr); - print_debug("\r\nDRAM filled\r\n"); -#endif -} - -static void ram_verify(unsigned long start, unsigned long stop) -{ - unsigned long addr; - int i = 0; - /* - * Verify. - */ -#if CONFIG_USE_PRINTK_IN_CAR - printk_debug("DRAM verify: 0x%08x-0x%08x\r\n", start, stop); -#else - print_debug("DRAM verify: "); - print_debug_hex32(start); - print_debug_char('-'); - print_debug_hex32(stop); - print_debug("\r\n"); -#endif - for(addr = start; addr < stop ; addr += 4) { - unsigned long value; - /* Display address being tested */ - if (!(addr & 0xfffff)) { -#if CONFIG_USE_PRINTK_IN_CAR - printk_debug("%08x \r", addr); -#else - print_debug_hex32(addr); - print_debug(" \r"); -#endif - } - value = read_phys(addr); - if (value != addr) { - /* Display address with error */ -#if CONFIG_USE_PRINTK_IN_CAR - printk_err("Fail: @0x%08x Read value=0x%08x\r\n", addr, value); -#else - print_err("Fail: @0x"); - print_err_hex32(addr); - print_err(" Read value=0x"); - print_err_hex32(value); - print_err("\r\n"); -#endif - i++; - if(i>256) { -#if CONFIG_USE_PRINTK_IN_CAR - printk_debug("Aborting.\n\r"); -#else - print_debug("Aborting.\n\r"); -#endif - break; - } - } - } - /* Display final address */ -#if CONFIG_USE_PRINTK_IN_CAR - printk_debug("%08x", addr); -#else - print_debug_hex32(addr); -#endif - - if (i) { -#if CONFIG_USE_PRINTK_IN_CAR - printk_debug("\r\nDRAM did _NOT_ verify!\r\n"); -#else - print_debug("\r\nDRAM did _NOT_ verify!\r\n"); -#endif - die("DRAM ERROR"); - } - else { -#if CONFIG_USE_PRINTK_IN_CAR - printk_debug("\r\nDRAM range verified.\r\n"); -#else - print_debug("\r\nDRAM range verified.\r\n"); -#endif - } -} - - -void ram_check(unsigned long start, unsigned long stop) -{ - /* - * This is much more of a "Is my DRAM properly configured?" - * test than a "Is my DRAM faulty?" test. Not all bits - * are tested. -Tyson - */ -#if CONFIG_USE_PRINTK_IN_CAR - printk_debug("Testing DRAM : %08x - %08x\r\n", start, stop); -#else - print_debug("Testing DRAM : "); - print_debug_hex32(start); - print_debug("-"); - print_debug_hex32(stop); - print_debug("\r\n"); -#endif - ram_fill(start, stop); - ram_verify(start, stop); -#if CONFIG_USE_PRINTK_IN_CAR - printk_debug("Done.\r\n"); -#else - print_debug("Done.\r\n"); -#endif -} - |