|
@@ -191,6 +191,7 @@ static inline efi_status_t efi_thunk_set_virtual_address_map(
|
|
|
struct efi_config {
|
|
|
u64 image_handle;
|
|
|
u64 table;
|
|
|
+ u64 runtime_services;
|
|
|
u64 boot_services;
|
|
|
u64 text_output;
|
|
|
efi_status_t (*call)(unsigned long, ...);
|
|
@@ -226,6 +227,10 @@ static inline bool efi_is_64bit(void)
|
|
|
#define __efi_call_early(f, ...) \
|
|
|
__efi_early()->call((unsigned long)f, __VA_ARGS__);
|
|
|
|
|
|
+#define efi_call_runtime(f, ...) \
|
|
|
+ __efi_early()->call(efi_table_attr(efi_runtime_services, f, \
|
|
|
+ __efi_early()->runtime_services), __VA_ARGS__)
|
|
|
+
|
|
|
extern bool efi_reboot_required(void);
|
|
|
|
|
|
#else
|