Lukas Wunner <lukas@xxxxxxxxx> wrote: > We already have the efi_call_early() macro to call boot services > in a manner that works across all arches and bitness variants. > > In 4.10 there will be an efi_call_proto() macro to allow the same > for protocol calls: > http://git.kernel.org/cgit/linux/kernel/git/tip/tip.git/commit/?h=efi/core&id=3552fdf29f01 > > I suggest adding an efi_call_runtime() macro for arch- and bitness- > agnostic runtime services calls, like this: > > #define efi_call_runtime(f, ...) \ > __efi_early()->call(efi_table_attr(efi_runtime_services, f, \ > __efi_early()->runtime_services), __VA_ARGS__) > > For this to work you need to add a runtime_services attribute to struct > efi_config, this requires modifying head_32.S and head_64.S, use commit > 0a637ee61247 ("x86/efi: Allow invocation of arbitrary boot services") > as a template. > > If you define corresponding efi_call_runtime() macros for ARM, you > should indeed be able to share this function across arches. I'm not sure why I need to do this if I replace get_secure_boot() from my patch with a call to efi_get_secureboot(). David -- 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