aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorTom Rini <trini@konsulko.com>2020-12-10 13:54:33 -0500
committerTom Rini <trini@konsulko.com>2020-12-10 13:54:33 -0500
commitddaa94978583d07ec515e7226e397221d8cc44c8 (patch)
tree10a493992781507bcd885b3cb8d747935f0fa93e /include
parent03f1f78a9b44b5fd6fc09faf81639879d2d0f85f (diff)
parent264485131c59c1c8fa17fe742bbca65cef868d94 (diff)
Merge tag 'efi-next' of https://gitlab.denx.de/u-boot/custodians/u-boot-efi into next
Pull request for UEFI sub-system for next Bug fixes * avoid corruption of FAT file system when using long names * correct values for RuntimeServicesSupport concerning UEFI capsule update * link partition to block device via EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER New feature * support EFI_LOAD_FILE_PROTOCOL in LoadImage() boot service
Diffstat (limited to 'include')
-rw-r--r--include/efi_loader.h8
-rw-r--r--include/fat.h7
2 files changed, 14 insertions, 1 deletions
diff --git a/include/efi_loader.h b/include/efi_loader.h
index 76cd2b36f2..365f3d01dc 100644
--- a/include/efi_loader.h
+++ b/include/efi_loader.h
@@ -195,6 +195,9 @@ extern const efi_guid_t efi_file_system_info_guid;
extern const efi_guid_t efi_guid_device_path_utilities_protocol;
/* GUID of the deprecated Unicode collation protocol */
extern const efi_guid_t efi_guid_unicode_collation_protocol;
+/* GUIDs of the Load File and Load File2 protocol */
+extern const efi_guid_t efi_guid_load_file_protocol;
+extern const efi_guid_t efi_guid_load_file2_protocol;
/* GUID of the Unicode collation protocol */
extern const efi_guid_t efi_guid_unicode_collation_protocol2;
extern const efi_guid_t efi_guid_hii_config_routing_protocol;
@@ -497,6 +500,11 @@ efi_status_t efi_search_protocol(const efi_handle_t handle,
efi_status_t efi_add_protocol(const efi_handle_t handle,
const efi_guid_t *protocol,
void *protocol_interface);
+/* Open protocol */
+efi_status_t efi_protocol_open(struct efi_handler *handler,
+ void **protocol_interface, void *agent_handle,
+ void *controller_handle, uint32_t attributes);
+
/* Delete protocol from a handle */
efi_status_t efi_remove_protocol(const efi_handle_t handle,
const efi_guid_t *protocol,
diff --git a/include/fat.h b/include/fat.h
index 02742f92a5..3c29a4484d 100644
--- a/include/fat.h
+++ b/include/fat.h
@@ -9,8 +9,9 @@
#ifndef _FAT_H_
#define _FAT_H_
-#include <asm/byteorder.h>
#include <fs.h>
+#include <asm/byteorder.h>
+#include <asm/cache.h>
struct disk_partition;
@@ -179,6 +180,9 @@ typedef struct {
int fats; /* Number of FATs */
} fsdata;
+struct fat_itr;
+typedef struct fat_itr fat_itr;
+
static inline u32 clust_to_sect(fsdata *fsdata, u32 clust)
{
return fsdata->data_begin + clust * fsdata->clust_size;
@@ -208,4 +212,5 @@ void fat_closedir(struct fs_dir_stream *dirs);
int fat_unlink(const char *filename);
int fat_mkdir(const char *dirname);
void fat_close(void);
+void *fat_next_cluster(fat_itr *itr, unsigned int *nbytes);
#endif /* _FAT_H_ */