X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=drivers%2Fbios_emulator%2Fbiosemu.c;h=9d4f07c074d33d1e3ad52a5a09164822188004a9;hb=c1244e852f06346a65ffa433b172fef8dfe33032;hp=75ceb458cfeb9feac04b24af85c566a859cf6f1b;hpb=4985ca5af3767ffe13ea96e1dc26f88c81084414;p=u-boot diff --git a/drivers/bios_emulator/biosemu.c b/drivers/bios_emulator/biosemu.c index 75ceb458cf..9d4f07c074 100644 --- a/drivers/bios_emulator/biosemu.c +++ b/drivers/bios_emulator/biosemu.c @@ -3,7 +3,7 @@ * BIOS emulator and interface * to Realmode X86 Emulator Library * -* Copyright (C) 2007 Freescale Semiconductor, Inc. All rights reserved. +* Copyright (C) 2007 Freescale Semiconductor, Inc. * Jason Jin * * Copyright (C) 1996-1999 SciTech Software, Inc. @@ -47,13 +47,10 @@ #include #include - -#if defined(CONFIG_BIOSEMU) - #include "biosemui.h" BE_sysEnv _BE_env = {{0}}; -static X86EMU_memFuncs _BE_mem __attribute__((section(".got2"))) = { +static X86EMU_memFuncs _BE_mem __attribute__((section(GOT2_TYPE))) = { BE_rdb, BE_rdw, BE_rdl, @@ -62,7 +59,7 @@ static X86EMU_memFuncs _BE_mem __attribute__((section(".got2"))) = { BE_wrl, }; -static X86EMU_pioFuncs _BE_pio __attribute__((section(".got2"))) = { +static X86EMU_pioFuncs _BE_pio __attribute__((section(GOT2_TYPE))) = { BE_inb, BE_inw, BE_inl, @@ -147,7 +144,8 @@ void X86API BE_setVGA(BE_VGAInfo * info) _BE_env.biosmem_base = _BE_env.busmem_base + 0x20000; _BE_env.biosmem_limit = 0xC7FFF; } - if (*((u32 *) info->LowMem) == 0) + if ((info->LowMem[0] == 0) && (info->LowMem[1] == 0) && + (info->LowMem[2] == 0) && (info->LowMem[3] == 0)) _BE_bios_init((u32 *) info->LowMem); memcpy((u8 *) M.mem_base, info->LowMem, sizeof(info->LowMem)); } @@ -372,4 +370,3 @@ int X86API BE_int86x(int intno, RMREGS * in, RMREGS * out, RMSREGS * sregs) sregs->gs = M.x86.R_GS; return out->x.ax; } -#endif