Re: [PATCH] EFI x86: pass firmware call parameters on the stack

Frederic Riss
2007-02-01T08:10:14Z

2007/2/1, bibo,mao <bibo_mao@linux.intel.com>:
> currently x86_64 kernel does not support efi, efi convention comply to
> MS convention. On ia32 parameter is passed on stack, on x86_64 parameter
> is passed by registers but that is different from x86_64 linux convention.

Is an x86_64 EFI firmware required to have 2 entry points, one x86_64
and one in ia32 mode ? If that's not the case, it means that an i386
kernel won't be able to work correctly on an EFI powered x86_64 box...

> How about adding EFIAPI prefix before efi runtime service function, this
> prefix has different definition in different architecture.

Have you any objection to the second patch I posted? It's not only a
matter of passing arguments, ia64 does quite a lot of things in its
wrapper functions. I can easily imagine that such additional work
could be added in the i386 wrappers if EFI becomes more widely used.