summaryrefslogtreecommitdiff
path: root/ArmPlatformPkg/FileSystem/BootMonFs/BootMonFsApi.h
diff options
context:
space:
mode:
Diffstat (limited to 'ArmPlatformPkg/FileSystem/BootMonFs/BootMonFsApi.h')
-rw-r--r--ArmPlatformPkg/FileSystem/BootMonFs/BootMonFsApi.h216
1 files changed, 216 insertions, 0 deletions
diff --git a/ArmPlatformPkg/FileSystem/BootMonFs/BootMonFsApi.h b/ArmPlatformPkg/FileSystem/BootMonFs/BootMonFsApi.h
new file mode 100644
index 0000000000..4f0122e32b
--- /dev/null
+++ b/ArmPlatformPkg/FileSystem/BootMonFs/BootMonFsApi.h
@@ -0,0 +1,216 @@
+/** @file
+*
+* Copyright (c) 2012-2014, ARM Limited. All rights reserved.
+*
+* This program and the accompanying materials
+* are licensed and made available under the terms and conditions of the BSD License
+* which accompanies this distribution. The full text of the license may be found at
+* http://opensource.org/licenses/bsd-license.php
+*
+* THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+* WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+*
+**/
+
+#ifndef __BOOTMON_FS_API_H
+#define __BOOTMON_FS_API_H
+
+#include <Protocol/SimpleFileSystem.h>
+
+EFI_STATUS
+BootMonFsDiscoverNextImage (
+ IN BOOTMON_FS_INSTANCE *Flash,
+ IN EFI_LBA *LbaStart,
+ OUT HW_IMAGE_DESCRIPTION *Image
+ );
+
+EFI_STATUS
+BootMonFsInitialize (
+ IN BOOTMON_FS_INSTANCE *Instance
+ );
+
+UINT32
+BootMonFsChecksum (
+ IN VOID *Data,
+ IN UINT32 Size
+ );
+
+EFI_STATUS
+BootMonFsComputeFooterChecksum (
+ IN OUT HW_IMAGE_DESCRIPTION *Footer
+ );
+
+EFIAPI
+EFI_STATUS
+OpenBootMonFsOpenVolume (
+ IN EFI_SIMPLE_FILE_SYSTEM_PROTOCOL *This,
+ OUT EFI_FILE_PROTOCOL **Root
+ );
+
+UINT32
+BootMonFsGetImageLength (
+ IN BOOTMON_FS_FILE *File
+ );
+
+UINTN
+BootMonFsGetPhysicalSize (
+ IN BOOTMON_FS_FILE* File
+ );
+
+EFI_STATUS
+BootMonFsCreateFile (
+ IN BOOTMON_FS_INSTANCE *Instance,
+ OUT BOOTMON_FS_FILE **File
+ );
+
+EFIAPI
+EFI_STATUS
+BootMonFsGetInfo (
+ IN EFI_FILE_PROTOCOL *This,
+ IN EFI_GUID *InformationType,
+ IN OUT UINTN *BufferSize,
+ OUT VOID *Buffer
+ );
+
+EFIAPI
+EFI_STATUS
+BootMonFsReadDirectory (
+ IN EFI_FILE_PROTOCOL *This,
+ IN OUT UINTN *BufferSize,
+ OUT VOID *Buffer
+ );
+
+EFIAPI
+EFI_STATUS
+BootMonFsFlushDirectory (
+ IN EFI_FILE_PROTOCOL *This
+ );
+
+EFIAPI
+EFI_STATUS
+BootMonFsFlushFile (
+ IN EFI_FILE_PROTOCOL *This
+ );
+
+EFIAPI
+EFI_STATUS
+BootMonFsCloseFile (
+ IN EFI_FILE_PROTOCOL *This
+ );
+
+EFIAPI
+EFI_STATUS
+BootMonFsOpenFile (
+ IN EFI_FILE_PROTOCOL *This,
+ OUT EFI_FILE_PROTOCOL **NewHandle,
+ IN CHAR16 *FileName,
+ IN UINT64 OpenMode,
+ IN UINT64 Attributes
+ );
+
+
+EFIAPI
+EFI_STATUS
+BootMonFsReadFile (
+ IN EFI_FILE_PROTOCOL *This,
+ IN OUT UINTN *BufferSize,
+ OUT VOID *Buffer
+ );
+
+EFIAPI
+EFI_STATUS
+BootMonFsSetDirPosition (
+ IN EFI_FILE_PROTOCOL *This,
+ IN UINT64 Position
+ );
+
+EFIAPI
+EFI_STATUS
+BootMonFsGetPosition (
+ IN EFI_FILE_PROTOCOL *This,
+ OUT UINT64 *Position
+ );
+
+EFIAPI
+EFI_STATUS
+BootMonFsWriteFile (
+ IN EFI_FILE_PROTOCOL *This,
+ IN OUT UINTN *BufferSize,
+ IN VOID *Buffer
+ );
+
+EFIAPI
+EFI_STATUS
+BootMonFsDeleteFail (
+ IN EFI_FILE_PROTOCOL *This
+ );
+
+EFIAPI
+EFI_STATUS
+BootMonFsDelete (
+ IN EFI_FILE_PROTOCOL *This
+ );
+
+EFIAPI
+EFI_STATUS
+BootMonFsSetPosition (
+ IN EFI_FILE_PROTOCOL *This,
+ IN UINT64 Position
+ );
+
+EFIAPI
+EFI_STATUS
+BootMonFsGetPosition(
+ IN EFI_FILE_PROTOCOL *This,
+ OUT UINT64 *Position
+ );
+
+//
+// UNSUPPORTED OPERATIONS
+//
+
+EFIAPI
+EFI_STATUS
+BootMonFsGetPositionUnsupported (
+ IN EFI_FILE_PROTOCOL *This,
+ OUT UINT64 *Position
+ );
+
+EFIAPI
+EFI_STATUS
+BootMonFsSetInfo (
+ IN EFI_FILE_PROTOCOL *This,
+ IN EFI_GUID *InformationType,
+ IN UINTN BufferSize,
+ IN VOID *Buffer
+ );
+
+//
+// Directory API
+//
+
+EFI_STATUS
+BootMonFsOpenDirectory (
+ OUT EFI_FILE_PROTOCOL **NewHandle,
+ IN CHAR16 *FileName,
+ IN BOOTMON_FS_INSTANCE *Volume
+ );
+
+//
+// Internal API
+//
+EFI_STATUS
+BootMonGetFileFromAsciiFileName (
+ IN BOOTMON_FS_INSTANCE *Instance,
+ IN CHAR8* AsciiFileName,
+ OUT BOOTMON_FS_FILE **File
+ );
+
+EFI_STATUS
+BootMonGetFileFromPosition (
+ IN BOOTMON_FS_INSTANCE *Instance,
+ IN UINTN Position,
+ OUT BOOTMON_FS_FILE **File
+ );
+
+#endif