[U-Boot] [PATCH 1/1] efi_loader: TODO for the EFI file protocol
Heinrich Schuchardt
xypron.glpk at gmx.de
Wed Mar 27 20:51:53 UTC 2019
We currently only support EFI_FILE_PROTOCOL_REVISION while
UEFI specs 2.4 - 2.7 prescribe EFI_FILE_PROTOCOL_REVISION2.
Add a todo.
Add missing constants for the EFI file protocol revision.
Signed-off-by: Heinrich Schuchardt <xypron.glpk at gmx.de>
---
doc/README.uefi | 3 +++
include/efi_api.h | 8 +++++++-
lib/efi_loader/efi_file.c | 4 ++++
3 files changed, 14 insertions(+), 1 deletion(-)
diff --git a/doc/README.uefi b/doc/README.uefi
index 0982fad92e..cda29cdcf7 100644
--- a/doc/README.uefi
+++ b/doc/README.uefi
@@ -329,6 +329,9 @@ This driver is only available if U-Boot is configured with
* persistence
* runtime support
+* incompletely implemented protocols
+ * support version 0x00020000 of the EFI file protocol
+
## Links
* [1](http://uefi.org/specifications)
diff --git a/include/efi_api.h b/include/efi_api.h
index 63b703c951..407acacc81 100644
--- a/include/efi_api.h
+++ b/include/efi_api.h
@@ -1326,7 +1326,9 @@ struct efi_pxe {
#define EFI_SIMPLE_FILE_SYSTEM_PROTOCOL_GUID \
EFI_GUID(0x964e5b22, 0x6459, 0x11d2, \
0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b)
-#define EFI_FILE_PROTOCOL_REVISION 0x00010000
+#define EFI_FILE_PROTOCOL_REVISION 0x00010000
+#define EFI_FILE_PROTOCOL_REVISION2 0x00020000
+#define EFI_FILE_PROTOCOL_LATEST_REVISION EFI_FILE_PROTOCOL_REVISION2
struct efi_file_handle {
u64 rev;
@@ -1350,6 +1352,10 @@ struct efi_file_handle {
const efi_guid_t *info_type, efi_uintn_t buffer_size,
void *buffer);
efi_status_t (EFIAPI *flush)(struct efi_file_handle *file);
+ /*
+ * TODO: We currently only support EFI file protocol revision 0x00010000
+ * while UEFI specs 2.4 - 2.7 prescribe revision 0x00020000.
+ */
};
#define EFI_SIMPLE_FILE_SYSTEM_PROTOCOL_REVISION 0x00010000
diff --git a/lib/efi_loader/efi_file.c b/lib/efi_loader/efi_file.c
index bc715218a1..f2843cad2d 100644
--- a/lib/efi_loader/efi_file.c
+++ b/lib/efi_loader/efi_file.c
@@ -628,6 +628,10 @@ static efi_status_t EFIAPI efi_file_flush(struct efi_file_handle *file)
}
static const struct efi_file_handle efi_file_handle_protocol = {
+ /*
+ * TODO: We currently only support EFI file protocol revision 0x00010000
+ * while UEFI specs 2.4 - 2.7 prescribe revision 0x00020000.
+ */
.rev = EFI_FILE_PROTOCOL_REVISION,
.open = efi_file_open,
.close = efi_file_close,
--
2.20.1
More information about the U-Boot
mailing list