On Mon, 07 Nov, at 11:09:00AM, Lukas Wunner wrote: > We already have a macro to invoke boot services which on x86 adapts > automatically to the bitness of the EFI firmware: efi_call_early(). > > The macro allows sharing of functions across arches and bitness variants > as long as those functions only call boot services. However in practice > functions in the EFI stub contain a mix of boot services calls and > protocol calls. > > Add an efi_call_proto() macro for bitness-agnostic protocol calls to > allow sharing more code across arches as well as deduplicating 32 bit > and 64 bit code paths. > > On x86, implement it using a new efi_table_attr() macro for bitness- > agnostic table lookups. Refactor efi_call_early() to make use of the > same macro. (The resulting object code remains identical.) > > Cc: Matt Fleming <matt@xxxxxxxxxxxxxxxxxxx> > Cc: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx> > Signed-off-by: Lukas Wunner <lukas@xxxxxxxxx> > --- > arch/arm/include/asm/efi.h | 3 +++ > arch/arm64/include/asm/efi.h | 3 +++ > arch/x86/include/asm/efi.h | 16 +++++++++++----- > 3 files changed, 17 insertions(+), 5 deletions(-) Neat! -- To unsubscribe from this list: send the line "unsubscribe linux-efi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html