Update Coreinfo to use TAG_FORWARD in tables.
Update the ramdump function cursor functions and make the address hex
instead of decimal

Signed-off-by: Myles Watson <mylesgw@gmail.com>
Acked-by: Ronald G. Minnich <rminnich@gmail.com>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Stefan Reinauer <stepan@coresystems.de>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4563 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
diff --git a/payloads/coreinfo/coreboot_module.c b/payloads/coreinfo/coreboot_module.c
index 16a63c5..c8694f4 100644
--- a/payloads/coreinfo/coreboot_module.c
+++ b/payloads/coreinfo/coreboot_module.c
@@ -203,6 +203,9 @@
 		struct cb_record *rec = (struct cb_record *)ptr;
 
 		switch (rec->tag) {
+		case CB_TAG_FORWARD:
+			return parse_header((void *)(unsigned long)((struct cb_forward *)rec)->forward, 1);
+			break;
 		case CB_TAG_MEMORY:
 			parse_memory(ptr);
 			break;
diff --git a/payloads/coreinfo/ramdump_module.c b/payloads/coreinfo/ramdump_module.c
index 04a9f09..a0479eb 100644
--- a/payloads/coreinfo/ramdump_module.c
+++ b/payloads/coreinfo/ramdump_module.c
@@ -34,7 +34,7 @@
 	int i, x = 0, y = 0, count = 0;
 	volatile uint8_t *ptr = (void *)(addr);
 
-	mvwprintw(win, 0, col + 54, "RAM address: %10d", addr);
+	mvwprintw(win, 0, col + 54, "RAM address: %10x", addr);
 
 	/* Dump 256 bytes of RAM. */
 	for (i = 1; i < 257; i++) {
@@ -68,23 +68,21 @@
 {
 	switch (key) {
 	case KEY_DOWN:
-		if (cursor == cursor_max)
-			return 0;
 		cursor++;
 		break;
 	case KEY_UP:
-		if (cursor == 0)
-			return 0;
 		cursor--;
 		break;
-	case KEY_NPAGE:
-		if (cursor == cursor_max)
-			return 0;
-		cursor += 4096; /* Jump in 1MB steps. */
+	case KEY_RIGHT:
+		cursor += 256;
+		break;
+	case KEY_LEFT:
+		cursor -= 256;
 		break;
 	case KEY_PPAGE:
-		if (cursor == 0)
-			return 0;
+		cursor += 4096; /* Jump in 1MB steps. */
+		break;
+	case KEY_NPAGE:
 		cursor -= 4096; /* Jump in 1MB steps. */
 		break;
 	}