[coreboot] New patch to review for coreboot: 699632f Use ntohll where appropriate.

Stefan Reinauer (stefan.reinauer@coreboot.org) gerrit at coreboot.org
Mon Oct 17 18:52:30 CEST 2011


Stefan Reinauer (stefan.reinauer at coreboot.org) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/288

-gerrit

commit 699632f2925fdcb16d4dcdaed99728e29588e083
Author: Stefan Reinauer <reinauer at chromium.org>
Date:   Mon Oct 17 09:51:15 2011 -0700

    Use ntohll where appropriate.
    
    also clean out a local copy of ntohl in yabel.
    
    Change-Id: Iffe85a53c9ea25abeb3ac663870eb7eb4874a704
    Signed-off-by: Stefan Reinauer <reinauer at google.com>
---
 src/boot/selfboot.c           |   16 +++++++++-------
 src/devices/oprom/yabel/vbe.c |    1 -
 src/lib/cbfs.c                |    4 ++--
 3 files changed, 11 insertions(+), 10 deletions(-)

diff --git a/src/boot/selfboot.c b/src/boot/selfboot.c
index 7ae9f8c..cdb1fa1 100644
--- a/src/boot/selfboot.c
+++ b/src/boot/selfboot.c
@@ -349,11 +349,12 @@ static int build_self_segment_list(
 					segment->type == PAYLOAD_SEGMENT_CODE ?  "code" : "data",
 					ntohl(segment->compression));
 			new = malloc(sizeof(*new));
-			new->s_dstaddr = ntohl((u32) segment->load_addr);
+			new->s_dstaddr = ntohll(segment->load_addr);
 			new->s_memsz = ntohl(segment->mem_len);
 			new->compression = ntohl(segment->compression);
 
-			new->s_srcaddr = (u32) ((unsigned char *) first_segment) + ntohl(segment->offset);
+			new->s_srcaddr = (u32) ((unsigned char *)first_segment)
+						+ ntohl(segment->offset);
 			new->s_filesz = ntohl(segment->len);
 			printk(BIOS_DEBUG, "  New segment dstaddr 0x%lx memsize 0x%lx srcaddr 0x%lx filesize 0x%lx\n",
 				new->s_dstaddr, new->s_memsz, new->s_srcaddr, new->s_filesz);
@@ -366,17 +367,18 @@ static int build_self_segment_list(
 			break;
 
 		case PAYLOAD_SEGMENT_BSS:
-			printk(BIOS_DEBUG, "  BSS 0x%p (%d byte)\n", (void *) ntohl((u32) segment->load_addr),
-				 ntohl(segment->mem_len));
+			printk(BIOS_DEBUG, "  BSS 0x%p (%d byte)\n", (void *)
+					(intptr_t)ntohll(segment->load_addr),
+				 	ntohl(segment->mem_len));
 			new = malloc(sizeof(*new));
 			new->s_filesz = 0;
-			new->s_dstaddr = ntohl((u32) segment->load_addr);
+			new->s_dstaddr = ntohll(segment->load_addr);
 			new->s_memsz = ntohl(segment->mem_len);
 			break;
 
 		case PAYLOAD_SEGMENT_ENTRY:
 			printk(BIOS_DEBUG, "  Entry Point 0x%p\n", (void *) ntohl((u32) segment->load_addr));
-			*entry =  ntohl((u32) segment->load_addr);
+			*entry =  ntohll(segment->load_addr);
 			/* Per definition, a payload always has the entry point
 			 * as last segment. Thus, we use the occurence of the
 			 * entry point as break condition for the loop.
@@ -396,7 +398,7 @@ static int build_self_segment_list(
 
 		// FIXME: Explain what this is
 		for(ptr = head->next; ptr != head; ptr = ptr->next) {
-			if (new->s_srcaddr < ntohl((u32) segment->load_addr))
+			if (new->s_srcaddr < ntohll(segment->load_addr))
 				break;
 		}
 
diff --git a/src/devices/oprom/yabel/vbe.c b/src/devices/oprom/yabel/vbe.c
index b1d6984..a9cee30 100644
--- a/src/devices/oprom/yabel/vbe.c
+++ b/src/devices/oprom/yabel/vbe.c
@@ -18,7 +18,6 @@
 #endif
 
 #include <arch/byteorder.h>
-#define ntohl(x) be32_to_cpu(x)
 
 #include "debug.h"
 
diff --git a/src/lib/cbfs.c b/src/lib/cbfs.c
index 20c9d49..33fa799 100644
--- a/src/lib/cbfs.c
+++ b/src/lib/cbfs.c
@@ -116,7 +116,7 @@ void * cbfs_load_stage(const char *name)
 	printk(BIOS_DEBUG, "Stage: done loading.\n");
 
 	entry = stage->entry;
-	// entry = ntohl((u32) stage->entry);
+	// entry = ntohll(stage->entry);
 
 	return (void *) entry;
 }
@@ -137,7 +137,7 @@ int cbfs_execute_stage(const char *name)
 
 	/* FIXME: This isn't right */
 	printk(BIOS_INFO,  "CBFS: run @ %p\n", (void *) ntohl((u32) stage->entry));
-	return run_address((void *) ntohl((u32) stage->entry));
+	return run_address((void *) (intptr_t)ntohll(stage->entry));
 }
 
 /**




More information about the coreboot mailing list