/** @file\r
- Defines data structure that is the volume header found at the beginning of\r
- all firmware volumes that are either memory mapped, or have an\r
+ Defines the data structure that is the volume header found at the beginning of\r
+ all firmware volumes that are either memory mapped or have an\r
associated FirmwareVolumeBlock protocol.\r
\r
- Copyright (c) 2006, Intel Corporation\r
- All rights reserved. This program and the accompanying materials\r
- are licensed and made available under the terms and conditions of the BSD License\r
- which accompanies this distribution. The full text of the license may be found at\r
- http://opensource.org/licenses/bsd-license.php\r
-\r
- THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
- WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
-\r
- Module Name: FirmwareVolumeHeader.h\r
+Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>\r
+This program and the accompanying materials are licensed and made available under \r
+the terms and conditions of the BSD License that accompanies this distribution. \r
+The full text of the license may be found at\r
+http://opensource.org/licenses/bsd-license.php. \r
+ \r
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
\r
@par Revision Reference:\r
- These definitions are from Firmware Volume Block Spec 0.9.\r
+ These definitions are from the Firmware Volume Block Spec 0.9.\r
\r
**/\r
\r
#ifndef __EFI_FIRMWARE_VOLUME_HEADER_H__\r
#define __EFI_FIRMWARE_VOLUME_HEADER_H__\r
\r
-//\r
-// Firmware Volume Block Attributes bit definitions\r
-//\r
+///\r
+/// Firmware Volume Block Attributes bit definitions.\r
+///@{\r
#define EFI_FVB_READ_DISABLED_CAP 0x00000001\r
#define EFI_FVB_READ_ENABLED_CAP 0x00000002\r
#define EFI_FVB_READ_STATUS 0x00000004\r
#define EFI_FVB_ALIGNMENT_16K 0x20000000\r
#define EFI_FVB_ALIGNMENT_32K 0x40000000\r
#define EFI_FVB_ALIGNMENT_64K 0x80000000\r
+///@}\r
\r
-#define EFI_FVB_CAPABILITIES (EFI_FVB_READ_DISABLED_CAP | \\r
- EFI_FVB_READ_ENABLED_CAP | \\r
- EFI_FVB_WRITE_DISABLED_CAP | \\r
- EFI_FVB_WRITE_ENABLED_CAP | \\r
- EFI_FVB_LOCK_CAP \\r
+/// This is a simple macro defined as the set of all FV Block Attributes signifying capabilities.\r
+#define EFI_FVB_CAPABILITIES ( EFI_FVB_READ_DISABLED_CAP | \\r
+ EFI_FVB_READ_ENABLED_CAP | \\r
+ EFI_FVB_WRITE_DISABLED_CAP | \\r
+ EFI_FVB_WRITE_ENABLED_CAP | \\r
+ EFI_FVB_LOCK_CAP \\r
)\r
\r
-#define EFI_TEST_FFS_ATTRIBUTES_BIT(FvbAttributes, TestAttributes, Bit) \\r
- ( \\r
- (BOOLEAN) ( \\r
- (FvbAttributes & EFI_FVB_ERASE_POLARITY) ? (((~TestAttributes) & Bit) == Bit) : ((TestAttributes & Bit) == Bit) \\r
- ) \\r
+/** A parameterized macro defining a boolean expression that tests the state of a particular bit.\r
+ *\r
+ * @param FvbAttributes Indicates a test for CLEAR if EFI_FVB_ERASE_POLARITY is 1, else test for SET.\r
+ *\r
+ * @param TestAttributes The set of bits to test.\r
+ *\r
+ * @param Bit A value indicating the bit(s) to test.\r
+ * If multiple bits are set, the logical OR of their tests is the expression's value.\r
+**/\r
+#define EFI_TEST_FFS_ATTRIBUTES_BIT( FvbAttributes, TestAttributes, Bit) \\r
+ ((BOOLEAN) \\r
+ ((FvbAttributes & EFI_FVB_ERASE_POLARITY) ? (((~TestAttributes) & Bit) == Bit) : ((TestAttributes & Bit) == Bit)) \\r
)\r
\r
+/// A simple macro defined as the set of all FV Block Attribute bits that indicate status.\r
#define EFI_FVB_STATUS (EFI_FVB_READ_STATUS | EFI_FVB_WRITE_STATUS | EFI_FVB_LOCK_STATUS)\r
\r
-#endif\r
+#endif /* __EFI_FIRMWARE_VOLUME_HEADER_H__ */\r