diff options
author | qwang12 <qwang12@6f19259b-4bc3-4df7-8a09-765794883524> | 2007-06-28 07:00:39 +0000 |
---|---|---|
committer | qwang12 <qwang12@6f19259b-4bc3-4df7-8a09-765794883524> | 2007-06-28 07:00:39 +0000 |
commit | 3eb9473ea9a949badfe06ae61d2d3fcfa53651c7 (patch) | |
tree | e9d8c368dbb1e58794b2c00acefe4bbad270f8c4 /EdkCompatibilityPkg/Foundation/Efi/Protocol/FileSystemInfo | |
parent | 30d4a0c7ec19938196b1308006b990e0945150da (diff) | |
download | edk2-platforms-3eb9473ea9a949badfe06ae61d2d3fcfa53651c7.tar.xz |
Add in the 1st version of ECP.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2832 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'EdkCompatibilityPkg/Foundation/Efi/Protocol/FileSystemInfo')
-rw-r--r-- | EdkCompatibilityPkg/Foundation/Efi/Protocol/FileSystemInfo/FileSystemInfo.c | 27 | ||||
-rw-r--r-- | EdkCompatibilityPkg/Foundation/Efi/Protocol/FileSystemInfo/FileSystemInfo.h | 51 |
2 files changed, 78 insertions, 0 deletions
diff --git a/EdkCompatibilityPkg/Foundation/Efi/Protocol/FileSystemInfo/FileSystemInfo.c b/EdkCompatibilityPkg/Foundation/Efi/Protocol/FileSystemInfo/FileSystemInfo.c new file mode 100644 index 0000000000..fe7a1b0dd3 --- /dev/null +++ b/EdkCompatibilityPkg/Foundation/Efi/Protocol/FileSystemInfo/FileSystemInfo.c @@ -0,0 +1,27 @@ +/*++
+
+Copyright (c) 2004, Intel Corporation
+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.
+
+Module Name:
+
+ FileSystemInfo.c
+
+Abstract:
+
+ FileSystemInfo protocol as defined in the EFI 1.0 specification.
+
+--*/
+
+#include "EfiSpec.h"
+#include EFI_PROTOCOL_DEFINITION (FileSystemInfo)
+
+EFI_GUID gEfiFileSystemInfoGuid = EFI_FILE_SYSTEM_INFO_ID_GUID;
+
+EFI_GUID_STRING(&gEfiFileSystemInfoGuid, "File System Info ID", "EFI File System Info ID GUID");
diff --git a/EdkCompatibilityPkg/Foundation/Efi/Protocol/FileSystemInfo/FileSystemInfo.h b/EdkCompatibilityPkg/Foundation/Efi/Protocol/FileSystemInfo/FileSystemInfo.h new file mode 100644 index 0000000000..fd3c737a9b --- /dev/null +++ b/EdkCompatibilityPkg/Foundation/Efi/Protocol/FileSystemInfo/FileSystemInfo.h @@ -0,0 +1,51 @@ +/*++
+
+Copyright (c) 2004, Intel Corporation
+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.
+
+Module Name:
+
+ FileSystemInfo.h
+
+Abstract:
+
+ FileSystemInfo protocol as defined in the EFI 1.0 specification.
+
+
+--*/
+
+#ifndef _FILE_SYSTEM_INFO_H_
+#define _FILE_SYSTEM_INFO_H_
+
+#define EFI_FILE_SYSTEM_INFO_ID_GUID \
+ { \
+ 0x9576e93, 0x6d3f, 0x11d2, 0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b \
+ }
+
+typedef struct {
+ UINT64 Size;
+ BOOLEAN ReadOnly;
+ UINT64 VolumeSize;
+ UINT64 FreeSpace;
+ UINT32 BlockSize;
+ CHAR16 VolumeLabel[1];
+} EFI_FILE_SYSTEM_INFO;
+
+//
+// The VolumeLabel field of the EFI_FILE_SYSTEM_INFO data structure is variable length.
+// Whenever code needs to know the size of the EFI_FILE_SYSTEM_INFO data structure, it needs
+// to be the size of the data structure without the VolumeLable field. The following macro
+// computes this size correctly no matter how big the VolumeLable array is declared.
+// This is required to make the EFI_FILE_SYSTEM_INFO data structure ANSI compilant.
+//
+#define SIZE_OF_EFI_FILE_SYSTEM_INFO EFI_FIELD_OFFSET (EFI_FILE_SYSTEM_INFO, VolumeLabel)
+
+extern EFI_GUID gEfiFileSystemInfoGuid;
+
+#endif
|