From 52d751659289eb9001d0ff090300d648743a012e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20F=C3=A4rber?= Date: Sun, 31 Oct 2010 16:37:33 +0000 Subject: [PATCH] Partially revert r917: Leave bootstrap functionality in kernel/cross.h MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The base_address for native bitwidth smaller than host bitwidth is available only in kernel/bootstrap.c and thus cannot be used elsewhere. The bitwidth equality code path will have to be enhanced for different cell sizes instead. Signed-off-by: Andreas Färber git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@939 f158a5a8-5612-0410-a976-696ce0be7e32 --- include/kernel/stack.h | 8 -------- kernel/cross.h | 4 ++++ 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/include/kernel/stack.h b/include/kernel/stack.h index 40ee09e..2a78c62 100644 --- a/include/kernel/stack.h +++ b/include/kernel/stack.h @@ -35,14 +35,6 @@ typedef ucell phandle_t; #define pointer2cell(x) ((ucell)(uintptr_t)(x)) #define cell2pointer(x) ((u8 *)(uintptr_t)(x)) #endif -#ifdef NATIVE_BITWIDTH_SMALLER_THAN_HOST_BITWIDTH -#define pointer2cell(x) ((ucell)(((unsigned long)(x))-base_address)) -#define cell2pointer(x) ((u8 *)(((unsigned long)(x))+base_address)) -#endif -#ifdef NATIVE_BITWIDTH_LARGER_THAN_HOST_BITWIDTH -#define pointer2cell(x) ((ucell)(unsigned long)(x)) -#define cell2pointer(x) ((u8 *)((unsigned long)(x)&0xFFFFFFFFUL)) -#endif static inline void PUSH(ucell value) { dstack[++dstackcnt] = (value); diff --git a/kernel/cross.h b/kernel/cross.h index 1b7d448..a34ed5f 100644 --- a/kernel/cross.h +++ b/kernel/cross.h @@ -114,11 +114,15 @@ #ifdef NATIVE_BITWIDTH_SMALLER_THAN_HOST_BITWIDTH extern unsigned long base_address; +#define pointer2cell(x) ((ucell)(((unsigned long)(x))-base_address)) +#define cell2pointer(x) ((u8 *)(((unsigned long)(x))+base_address)) #define FMT_CELL_x "x" #define FMT_CELL_d "d" #endif #ifdef NATIVE_BITWIDTH_LARGER_THAN_HOST_BITWIDTH +#define pointer2cell(x) ((ucell)(unsigned long)(x)) +#define cell2pointer(x) ((u8 *)((unsigned long)(x)&0xFFFFFFFFUL)) #define FMT_CELL_x "llx" #define FMT_CELL_d "lld" #endif