[PATCH] x86: Drop _X86EMU_env definition when CONFIG_BIOSEMU is used

Bin Meng bmeng.cn at gmail.com
Thu Jul 8 01:36:57 CEST 2021


Hi Simon,

On Thu, Jul 8, 2021 at 1:35 AM Simon Glass <sjg at chromium.org> wrote:
>
> Hi Bin,
>
> On Wed, 7 Jul 2021 at 01:36, Bin Meng <bmeng.cn at gmail.com> wrote:
> >
> > 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 at gmail.com>
> > ---
> >
> >  arch/x86/lib/bios.c | 2 ++
> >  1 file changed, 2 insertions(+)
>
> This seems a bit hacky. Should we define a new Kconfig that both use,
> then put this declaration in a common file?

Yes, that's what I thought so. We can do this later. Currently this is
to unblock the GCC 11 CI testing.

Regards,
Bin


More information about the U-Boot mailing list