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

From: bibo,mao
Date: Thu Feb 01 2007 - 20:32:56 EST


Frederic Riss wrote:
2007/2/1, bibo,mao <bibo_mao@xxxxxxxxxxxxxxx>:
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...

AFAIK x86_64 EFI firmware now has only one entry point, i386 kernel
can not boot up with 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.

I do not object your second patch if there will be more wrapper functions
to be added in i386 efi code. I have to give up my patch:)

thanks
bibo,mao
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/