x86: Drop _X86EMU_env definition when CONFIG_BIOSEMU is used
authorBin Meng <bmeng.cn@gmail.com>
Wed, 7 Jul 2021 07:36:26 +0000 (15:36 +0800)
committerTom Rini <trini@konsulko.com>
Wed, 7 Jul 2021 14:17:54 +0000 (10:17 -0400)
commitcfa5189811e29e4a24ed41a814e2feb41e79b52e
tree966ea0e8e42138528ca9595b4b4de4de42b54ef4
parentcb80ff20f2c8392f19248418f9a19a0474661860
x86: Drop _X86EMU_env definition when CONFIG_BIOSEMU is used

With x86 we can execute an option ROM either natively or using the
x86 emulator (if enabled with CONFIG_BIOSEMU). Both of these share
the _X86EMU_env variable, with the native code using it to hold
register state during interrupt processing.

At present, in 32-bit U-Boot, the variable is declared twice, once
in common code and once in code only compiled with CONFIG_BIOSEMU.

With GCC 11 this causes a 'multiple definitions' error on boards
with CONFIG_BIOSEMU.

Drop the emulator definition when CONFIG_BIOSEMU is used.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
arch/x86/lib/bios.c