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

-gerrit

commit 699632f2925fdcb16d4dcdaed99728e29588e083
Author: Stefan Reinauer <[email protected]>
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 <[email protected]>
---
 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));
 }
 
 /**

-- 
coreboot mailing list: [email protected]
http://www.coreboot.org/mailman/listinfo/coreboot

Reply via email to