]> git.proxmox.com Git - mirror_edk2.git/blobdiff - Tools/Java/Source/FrameworkTasks/org/tianocore/framework/tasks/FfsTypes.java
Restructuring for better separation of Tool packages.
[mirror_edk2.git] / Tools / Java / Source / FrameworkTasks / org / tianocore / framework / tasks / FfsTypes.java
diff --git a/Tools/Java/Source/FrameworkTasks/org/tianocore/framework/tasks/FfsTypes.java b/Tools/Java/Source/FrameworkTasks/org/tianocore/framework/tasks/FfsTypes.java
new file mode 100644 (file)
index 0000000..6afc3a9
--- /dev/null
@@ -0,0 +1,115 @@
+/** @file\r
+ FfsTypes class.\r
+\r
+ FfsType class record the costant value of Ffs File attribute, type, and \r
+ architecture.\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
+ **/\r
+package org.tianocore.framework.tasks;\r
+\r
+/**\r
+  FfsType\r
+  \r
+  FfsType class record the costant value of Ffs File attribute, type, and \r
+  architecture.\r
+  \r
+**/\r
+public interface FfsTypes {\r
+    //\r
+    // Ffs file attributes\r
+    //\r
+    static final int FFS_ATTRIB_TAIL_PRESENT             = 0x01;\r
+\r
+    static final int FFS_ATTRIB_RECOVERY                 = 0x02;\r
+\r
+    static final int FFS_ATTRIB_HEADER_EXTENSION         = 0x04;\r
+\r
+    static final int FFS_ATTRIB_DATA_ALIGNMENT           = 0x38;\r
+\r
+    static final int FFS_ATTRIB_CHECKSUM                 = 0x40;\r
+\r
+    //\r
+    // Ffs states difinitions\r
+    //\r
+    static final int EFI_FILE_HEADER_CONSTRUCTION        = 0x01;\r
+\r
+    static final int EFI_FILE_HEADER_VALID               = 0x02;\r
+\r
+    static final int EFI_FILE_DATA_VALID                 = 0x04;\r
+\r
+    static final int EFI_FILE_MARKED_FOR_UPDATE          = 0x08;\r
+\r
+    static final int EFI_FILE_DELETED                    = 0x10;\r
+\r
+    static final int EFI_FILE_HEADER_INVALID             = 0x20;\r
+\r
+    //\r
+    // FFS_FIXED_CHECKSUM is the default checksum value used when the\r
+    // FFS_ATTRIB_CHECKSUM attribute bit is clear note this is NOT an\r
+    // architecturally defined value, but is in this file for implementation\r
+    // convenience\r
+    //\r
+    static final int FFS_FIXED_CHECKSUM = 0x5a;\r
+\r
+    //\r
+    // Architectural file types\r
+    //\r
+    static final int EFI_FV_FILETYPE_ALL                   = 0x00;\r
+\r
+    static final int EFI_FV_FILETYPE_RAW                   = 0x01;\r
+\r
+    static final int EFI_FV_FILETYPE_FREEFORM              = 0x02;\r
+\r
+    static final int EFI_FV_FILETYPE_SECURITY_CORE         = 0x03;\r
+\r
+    static final int EFI_FV_FILETYPE_PEI_CORE              = 0x04;\r
+\r
+    static final int EFI_FV_FILETYPE_DXE_CORE              = 0x05;\r
+\r
+    static final int EFI_FV_FILETYPE_PEIM                  = 0x06;\r
+\r
+    static final int EFI_FV_FILETYPE_DRIVER                = 0x07;\r
+\r
+    static final int EFI_FV_FILETYPE_COMBINED_PEIM_DRIVER  = 0x08;\r
+\r
+    static final int EFI_FV_FILETYPE_APPLICATION           = 0x09;\r
+\r
+    static final int EFI_FV_FILETYPE_FIRMWARE_VOLUME_IMAGE = 0x0B;\r
+\r
+    static final int EFI_FV_FILETYPE_FFS_PAD               = 0xF0;\r
+\r
+    //\r
+    // Ffs file type\r
+    //\r
+    static final String EFI_FV_FFS_FILETYPE_STR            = ".FFS";\r
+    static final String EFI_FV_DXE_FILETYPE_STR            = ".DXE";\r
+    static final String EFI_FV_PEI_FILETYPE_STR            = ".PEI";\r
+    static final String EFI_FV_APP_FILETYPE_STR            = ".APP";\r
+    static final String EFI_FV_FVI_FILETYPE_STR            = ".FVI";\r
+    static final String EFI_FV_SEC_FILETYPE_STR            = ".SEC";\r
+    \r
+    //\r
+    //  Section Type copy from EfiImageFormat.h\r
+    //\r
+    static final int  EFI_SECTION_COMPRESSION              = 0x01;\r
+    static final int  EFI_SECTION_GUID_DEFINED             = 0x02;\r
+    \r
+    //\r
+    //  CompressionType values, we currently don't support \r
+    //  "EFI_CUSTOMIZED_COMPRESSION".\r
+    //\r
+    static final int  EFI_NOT_COMPRESSED                   = 0x00;\r
+    static final int  EFI_STANDARD_COMPRESSION             = 0x01;\r
+    static final int  EFI_CUSTOMIZED_COMPRESSION           = 0x02;\r
+    \r
+\r
+}
\ No newline at end of file