summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorStefan Reinauer <stefan.reinauer@coreboot.org>2013-01-11 10:41:42 -0800
committerRonald G. Minnich <rminnich@gmail.com>2013-01-11 19:56:43 +0100
commitb8ad2244686a801a96326d8075526d9b701ad982 (patch)
treef7cf4e7229880a3a8403fa27415ba44d8c6cb8d7 /src
parentea22796edaa5c51271ea98590d22eea3976cadba (diff)
downloadcoreboot-b8ad2244686a801a96326d8075526d9b701ad982.tar.xz
cbmem: replace pointer type by uint64_t
Since coreboot is compiled into 32bit code, and userspace might be 32 or 64bit, putting a pointer into the coreboot table is not viable. Instead, use a uint64_t, which is always big enough for a pointer, even if we decide to move to a 64bit coreboot at some point. Change-Id: Ic974cdcbc9b95126dd1e07125f3e9dce104545f5 Signed-off-by: Stefan Reinauer <reinauer@google.com> Reviewed-on: http://review.coreboot.org/2135 Tested-by: build bot (Jenkins) Reviewed-by: Ronald G. Minnich <rminnich@gmail.com>
Diffstat (limited to 'src')
-rw-r--r--src/arch/armv7/boot/coreboot_table.c2
-rw-r--r--src/arch/x86/boot/coreboot_table.c2
-rw-r--r--src/include/boot/coreboot_tables.h2
3 files changed, 3 insertions, 3 deletions
diff --git a/src/arch/armv7/boot/coreboot_table.c b/src/arch/armv7/boot/coreboot_table.c
index 9f67da0e1b..86a004d887 100644
--- a/src/arch/armv7/boot/coreboot_table.c
+++ b/src/arch/armv7/boot/coreboot_table.c
@@ -251,7 +251,7 @@ static void add_cbmem_pointers(struct lb_header *header)
}
cbmem_ref->tag = sid->table_tag;
cbmem_ref->size = sizeof(*cbmem_ref);
- cbmem_ref->cbmem_addr = cbmem_addr;
+ cbmem_ref->cbmem_addr = (unsigned long)cbmem_addr;
}
}
diff --git a/src/arch/x86/boot/coreboot_table.c b/src/arch/x86/boot/coreboot_table.c
index 18ec6d8c3c..8dccd77287 100644
--- a/src/arch/x86/boot/coreboot_table.c
+++ b/src/arch/x86/boot/coreboot_table.c
@@ -251,7 +251,7 @@ static void add_cbmem_pointers(struct lb_header *header)
}
cbmem_ref->tag = sid->table_tag;
cbmem_ref->size = sizeof(*cbmem_ref);
- cbmem_ref->cbmem_addr = cbmem_addr;
+ cbmem_ref->cbmem_addr = (unsigned long)cbmem_addr;
}
}
diff --git a/src/include/boot/coreboot_tables.h b/src/include/boot/coreboot_tables.h
index 5d5ca2cf56..9cf90d3bc9 100644
--- a/src/include/boot/coreboot_tables.h
+++ b/src/include/boot/coreboot_tables.h
@@ -229,7 +229,7 @@ struct lb_cbmem_ref {
uint32_t tag;
uint32_t size;
- void *cbmem_addr;
+ uint64_t cbmem_addr;
};
#define LB_TAG_VBNV 0x0019