X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=MdePkg%2FInclude%2FGuid%2FFileSystemInfo.h;h=f037f895b0f51e46fa4cb6dd01620743549fb552;hp=a890c3871c16b28f2e86a3f1bc6f52f83fe3d74c;hb=9df063a06aef048c042498e2f542fb693e93493a;hpb=b32a39b3287e8f03b7701619e140f814a0a61a48 diff --git a/MdePkg/Include/Guid/FileSystemInfo.h b/MdePkg/Include/Guid/FileSystemInfo.h index a890c3871c..f037f895b0 100644 --- a/MdePkg/Include/Guid/FileSystemInfo.h +++ b/MdePkg/Include/Guid/FileSystemInfo.h @@ -1,44 +1,62 @@ /** @file - FileSystemInfo guid and data structure as defined in the EFI 1.0 specification. - - Copyright (c) 2006, 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 + Provides a GUID and a data structure that can be used with EFI_FILE_PROTOCOL.GetInfo() + or EFI_FILE_PROTOCOL.SetInfo() to get or set information about the system's volume. + This GUID is defined in UEFI specification. + +Copyright (c) 2006 - 2010, 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 that 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 __FILE_SYSTEM_INFO_H__ #define __FILE_SYSTEM_INFO_H__ -#define EFI_FILE_SYSTEM_INFO_ID_GUID \ +#define EFI_FILE_SYSTEM_INFO_ID \ { \ 0x9576e93, 0x6d3f, 0x11d2, {0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b } \ } typedef struct { + /// + /// The size of the EFI_FILE_SYSTEM_INFO structure, including the Null-terminated VolumeLabel string. + /// UINT64 Size; + /// + /// TRUE if the volume only supports read access. + /// BOOLEAN ReadOnly; + /// + /// The number of bytes managed by the file system. + /// UINT64 VolumeSize; + /// + /// The number of available bytes for use by the file system. + /// UINT64 FreeSpace; + /// + /// The nominal block size by which files are typically grown. + /// UINT32 BlockSize; + /// + /// The Null-terminated string that is the volume's label. + /// 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) +/// +/// 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 OFFSET_OF (EFI_FILE_SYSTEM_INFO, VolumeLabel) extern EFI_GUID gEfiFileSystemInfoGuid;