boot/efi: Sync our TianoCore EDK II headers with the edk2-stable201908 tag.
authorSascha Wildner <saw@online.de>
Sun, 15 Sep 2019 15:12:29 +0000 (17:12 +0200)
committerSascha Wildner <saw@online.de>
Sun, 15 Sep 2019 15:13:56 +0000 (17:13 +0200)
Not much to see here. Mostly whitespace in comments.

39 files changed:
sys/contrib/edk2/Include/Base.h
sys/contrib/edk2/Include/Guid/Acpi.h
sys/contrib/edk2/Include/Guid/DebugImageInfoTable.h
sys/contrib/edk2/Include/Guid/DxeServices.h
sys/contrib/edk2/Include/Guid/HiiFormMapMethodGuid.h
sys/contrib/edk2/Include/Guid/HobList.h
sys/contrib/edk2/Include/Guid/Mps.h
sys/contrib/edk2/Include/Guid/PcAnsi.h
sys/contrib/edk2/Include/Guid/SmBios.h
sys/contrib/edk2/Include/Guid/WinCertificate.h
sys/contrib/edk2/Include/IndustryStandard/Acpi10.h
sys/contrib/edk2/Include/IndustryStandard/Acpi20.h
sys/contrib/edk2/Include/IndustryStandard/Acpi30.h
sys/contrib/edk2/Include/IndustryStandard/Acpi40.h
sys/contrib/edk2/Include/IndustryStandard/Acpi50.h
sys/contrib/edk2/Include/IndustryStandard/Acpi51.h
sys/contrib/edk2/Include/IndustryStandard/Acpi60.h
sys/contrib/edk2/Include/IndustryStandard/AcpiAml.h
sys/contrib/edk2/Include/IndustryStandard/Bluetooth.h
sys/contrib/edk2/Include/Protocol/BlockIo.h
sys/contrib/edk2/Include/Protocol/DevicePath.h
sys/contrib/edk2/Include/Protocol/GraphicsOutput.h
sys/contrib/edk2/Include/Protocol/LoadedImage.h
sys/contrib/edk2/Include/Protocol/NetworkInterfaceIdentifier.h
sys/contrib/edk2/Include/Protocol/PciIo.h
sys/contrib/edk2/Include/Protocol/SerialIo.h
sys/contrib/edk2/Include/Protocol/SimpleNetwork.h
sys/contrib/edk2/Include/Protocol/SimpleTextIn.h
sys/contrib/edk2/Include/Protocol/SimpleTextInEx.h
sys/contrib/edk2/Include/Protocol/SimpleTextOut.h
sys/contrib/edk2/Include/Protocol/UgaDraw.h
sys/contrib/edk2/Include/Uefi.h
sys/contrib/edk2/Include/Uefi/UefiBaseType.h
sys/contrib/edk2/Include/Uefi/UefiGpt.h
sys/contrib/edk2/Include/Uefi/UefiInternalFormRepresentation.h
sys/contrib/edk2/Include/Uefi/UefiMultiPhase.h
sys/contrib/edk2/Include/Uefi/UefiPxe.h
sys/contrib/edk2/Include/Uefi/UefiSpec.h
sys/contrib/edk2/Include/X64/ProcessorBind.h

index bd6224e..57c82ba 100644 (file)
@@ -6,15 +6,9 @@
   environment. There are a set of base libraries in the Mde Package that can
   be used to implement base modules.
 
-Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
+Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
 Portions copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
-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.
+SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
 
@@ -65,8 +59,8 @@ VERIFY_SIZE_OF (CHAR16, 2);
 
 //
 // The following three enum types are used to verify that the compiler
-// configuration for enum types is compliant with Section 2.3.1 of the 
-// UEFI 2.3 Specification. These enum types and enum values are not 
+// configuration for enum types is compliant with Section 2.3.1 of the
+// UEFI 2.3 Specification. These enum types and enum values are not
 // intended to be used. A prefix of '__' is used avoid conflicts with
 // other types.
 //
@@ -112,11 +106,10 @@ VERIFY_SIZE_OF (__VERIFY_UINT32_ENUM_SIZE, 4);
 // warnings.
 //
 #ifndef UNREACHABLE
-  #if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ > 4)
+  #ifdef __GNUC__
     ///
     /// Signal compilers and analyzers that this call is not reachable.  It is
     /// up to the compiler to remove any code past that point.
-    /// Not implemented by GCC 4.4 or earlier.
     ///
     #define UNREACHABLE()  __builtin_unreachable ()
   #elif defined (__has_feature)
@@ -218,6 +211,26 @@ VERIFY_SIZE_OF (__VERIFY_UINT32_ENUM_SIZE, 4);
   #endif
 #endif
 
+///
+/// Tell the code optimizer that the function will return twice.
+/// This prevents wrong optimizations which can cause bugs.
+///
+#ifndef RETURNS_TWICE
+  #if defined (__GNUC__) || defined (__clang__)
+    ///
+    /// Tell the code optimizer that the function will return twice.
+    /// This prevents wrong optimizations which can cause bugs.
+    ///
+    #define RETURNS_TWICE  __attribute__((returns_twice))
+  #else
+    ///
+    /// Tell the code optimizer that the function will return twice.
+    /// This prevents wrong optimizations which can cause bugs.
+    ///
+    #define RETURNS_TWICE
+  #endif
+#endif
+
 //
 // For symbol name in assembly code, an extra "_" is sometimes necessary
 //
@@ -648,6 +661,18 @@ struct _LIST_ENTRY {
 
 #define VA_COPY(Dest, Start)          __va_copy (Dest, Start)
 
+#elif defined(_M_ARM) || defined(_M_ARM64)
+//
+// MSFT ARM variable argument list support.
+//
+
+typedef char* VA_LIST;
+
+#define VA_START(Marker, Parameter)     __va_start (&Marker, &Parameter, _INT_SIZE_OF (Parameter), __alignof(Parameter), &Parameter)
+#define VA_ARG(Marker, TYPE)            (*(TYPE *) ((Marker += _INT_SIZE_OF (TYPE) + ((-(INTN)Marker) & (sizeof(TYPE) - 1))) - _INT_SIZE_OF (TYPE)))
+#define VA_END(Marker)                  (Marker = (VA_LIST) 0)
+#define VA_COPY(Dest, Start)            ((void)((Dest) = (Start)))
+
 #elif defined(__GNUC__)
 
 #if defined(MDE_CPU_X64) && !defined(NO_MSABI_VA_FUNCS)
@@ -753,7 +778,7 @@ typedef CHAR8 *VA_LIST;
 
   This macro initializes Dest as a copy of Start, as if the VA_START macro had been applied to Dest
   followed by the same sequence of uses of the VA_ARG macro as had previously been used to reach
-  the present state of Start. 
+  the present state of Start.
 
   @param   Dest   VA_LIST used to traverse the list of arguments.
   @param   Start  VA_LIST used to traverse the list of arguments.
@@ -837,7 +862,7 @@ typedef UINTN  *BASE_LIST;
   @return  A pointer to the structure from one of it's elements.
 
 **/
-#define BASE_CR(Record, TYPE, Field)  ((TYPE *) ((CHAR8 *) (Record) - (CHAR8 *) &(((TYPE *) 0)->Field)))
+#define BASE_CR(Record, TYPE, Field)  ((TYPE *) ((CHAR8 *) (Record) - OFFSET_OF (TYPE, Field)))
 
 /**
   Rounds a value up to the next boundary using a specified alignment.
index 3897ae6..7aa5ab5 100644 (file)
@@ -2,17 +2,11 @@
   GUIDs used for ACPI entries in the EFI system table
 
   These GUIDs point the ACPI tables as defined in the ACPI specifications.
-  ACPI 2.0 specification defines the ACPI 2.0 GUID. UEFI 2.0 defines the 
+  ACPI 2.0 specification defines the ACPI 2.0 GUID. UEFI 2.0 defines the
   ACPI 2.0 Table GUID and ACPI Table GUID.
 
-  Copyright (c) 2006 - 2009, Intel Corporation. All rights reserved.<BR>
-  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.             
+  Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
+  SPDX-License-Identifier: BSD-2-Clause-Patent
 
   @par Revision Reference:
   GUIDs defined in UEFI 2.0 spec.
index 553ebd2..7940f8d 100644 (file)
@@ -1,14 +1,8 @@
 /** @file
   GUID and related data structures used with the Debug Image Info Table.
 
-  Copyright (c) 2006 - 2008, Intel Corporation. All rights reserved.<BR>
-  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.             
+  Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
+  SPDX-License-Identifier: BSD-2-Clause-Patent
 
   @par Revision Reference:
   GUID defined in UEFI 2.0 spec.
@@ -35,7 +29,7 @@
 
 typedef struct {
   UINT64                Signature;          ///< A constant UINT64 that has the value EFI_SYSTEM_TABLE_SIGNATURE
-  EFI_PHYSICAL_ADDRESS  EfiSystemTableBase; ///< The physical address of the EFI system table. 
+  EFI_PHYSICAL_ADDRESS  EfiSystemTableBase; ///< The physical address of the EFI system table.
   UINT32                Crc32;              ///< A 32-bit CRC value that is used to verify the EFI_SYSTEM_TABLE_POINTER structure is valid.
 } EFI_SYSTEM_TABLE_POINTER;
 
index be2b5b3..8c5f7e9 100644 (file)
@@ -1,14 +1,8 @@
 /** @file
   GUID used to identify the DXE Services Table
 
-  Copyright (c) 2006 - 2009, Intel Corporation. All rights reserved.<BR>
-  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.             
+  Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
+  SPDX-License-Identifier: BSD-2-Clause-Patent
 
   @par Revision Reference:
   GUID introduced in PI Version 1.0.
index 8b37807..6fff5b6 100644 (file)
@@ -1,14 +1,8 @@
 /** @file
   Guid used to identify HII FormMap configuration method.
 
-  Copyright (c) 2009, Intel Corporation. All rights reserved.<BR>
-  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.             
+  Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved.<BR>
+  SPDX-License-Identifier: BSD-2-Clause-Patent
 
   @par Revision Reference:
   GUID defined in UEFI 2.2 spec.
index 94c1a58..e44faed 100644 (file)
@@ -3,14 +3,8 @@
 
   These GUIDs point the HOB List passed from PEI to DXE.
 
-  Copyright (c) 2006 - 2009, Intel Corporation. All rights reserved.<BR>
-  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.             
+  Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
+  SPDX-License-Identifier: BSD-2-Clause-Patent
 
   @par Revision Reference:
   GUID introduced in PI Version 1.0.
index 4d4692e..48f52b0 100644 (file)
@@ -3,14 +3,8 @@
   ACPI is the primary means of exporting MPS information to the OS. MPS only was
   included to support Itanium-based platform power on. So don't use it if you don't have too.
 
-  Copyright (c) 2006, Intel Corporation. All rights reserved.<BR>
-  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.             
+  Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
+  SPDX-License-Identifier: BSD-2-Clause-Patent
 
   @par Revision Reference:
   GUIDs defined in UEFI 2.0 spec.
index 7ff878d..312df6b 100644 (file)
@@ -1,14 +1,8 @@
 /** @file
   Terminal Device Path Vendor Guid.
 
-  Copyright (c) 2006 - 2009, Intel Corporation. All rights reserved.<BR>
-  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.             
+  Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
+  SPDX-License-Identifier: BSD-2-Clause-Patent
 
   @par Revision Reference:
   GUIDs defined in UEFI 2.0 spec.
@@ -42,7 +36,7 @@
   { \
     0x37499a9d, 0x542f, 0x4c89, {0xa0, 0x26, 0x35, 0xda, 0x14, 0x20, 0x94, 0xe4 } \
   }
-  
+
 #define EFI_SAS_DEVICE_PATH_GUID \
   { \
     0xd487ddb4, 0x008b, 0x11d9, {0xaf, 0xdc, 0x00, 0x10, 0x83, 0xff, 0xca, 0x4d } \
index 05e11b7..9040e3b 100644 (file)
@@ -5,14 +5,8 @@
   locate the SMBIOS tables. Do not search the 0xF0000 segment to find SMBIOS
   tables.
 
-  Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.<BR>
-  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.             
+  Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
+  SPDX-License-Identifier: BSD-2-Clause-Patent
 
   @par Revision Reference:
   GUIDs defined in UEFI 2.5 spec.
index 6dea446..c44bb38 100644 (file)
@@ -2,13 +2,7 @@
   GUID for UEFI WIN_CERTIFICATE structure.
 
   Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.<BR>
-  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.
+  SPDX-License-Identifier: BSD-2-Clause-Patent
 
   @par Revision Reference:
   GUID defined in UEFI 2.0 spec.
index 5a17db6..8b31a2d 100644 (file)
@@ -1,14 +1,8 @@
-/** @file   
+/** @file
   ACPI 1.0b definitions from the ACPI Specification, revision 1.0b
 
-Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.<BR>
-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.             
+Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
+SPDX-License-Identifier: BSD-2-Clause-Patent
 **/
 
 #ifndef _ACPI_1_0_H_
@@ -357,7 +351,7 @@ typedef struct {
 #define   EFI_ACPI_DMA_SPEED_TYPE_A                     0x20
 #define   EFI_ACPI_DMA_SPEED_TYPE_B                     0x40
 #define   EFI_ACPI_DMA_SPEED_TYPE_F                     0x60
-                                               
+
 #define EFI_ACPI_DMA_BUS_MASTER_MASK                    0x04
 #define   EFI_ACPI_DMA_BUS_MASTER                       0x04
 
@@ -403,7 +397,7 @@ typedef struct {
 
 //
 // Root System Description Table
-// No definition needed as it is a common description table header, the same with 
+// No definition needed as it is a common description table header, the same with
 // EFI_ACPI_DESCRIPTION_HEADER, followed by a variable number of UINT32 table pointers.
 //
 
index d84b7db..d896031 100644 (file)
@@ -1,14 +1,8 @@
-/** @file   
+/** @file
   ACPI 2.0 definitions from the ACPI Specification, revision 2.0
 
-  Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.<BR>
-  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.             
+  Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
+  SPDX-License-Identifier: BSD-2-Clause-Patent
 **/
 
 #ifndef _ACPI_2_0_H_
@@ -103,7 +97,7 @@ typedef struct {
 
 //
 // Root System Description Table
-// No definition needed as it is a common description table header, the same with 
+// No definition needed as it is a common description table header, the same with
 // EFI_ACPI_DESCRIPTION_HEADER, followed by a variable number of UINT32 table pointers.
 //
 
@@ -114,7 +108,7 @@ typedef struct {
 
 //
 // Extended System Description Table
-// No definition needed as it is a common description table header, the same with 
+// No definition needed as it is a common description table header, the same with
 // EFI_ACPI_DESCRIPTION_HEADER, followed by a variable number of UINT64 table pointers.
 //
 
index d510d8b..44cf71d 100644 (file)
@@ -1,14 +1,8 @@
-/** @file   
+/** @file
   ACPI 3.0 definitions from the ACPI Specification Revision 3.0b October 10, 2006
 
-  Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.<BR>
-  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.             
+  Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
+  SPDX-License-Identifier: BSD-2-Clause-Patent
 **/
 
 #ifndef _ACPI_3_0_H_
@@ -128,7 +122,7 @@ typedef struct {
 
 //
 // Root System Description Table
-// No definition needed as it is a common description table header, the same with 
+// No definition needed as it is a common description table header, the same with
 // EFI_ACPI_DESCRIPTION_HEADER, followed by a variable number of UINT32 table pointers.
 //
 
@@ -139,7 +133,7 @@ typedef struct {
 
 //
 // Extended System Description Table
-// No definition needed as it is a common description table header, the same with 
+// No definition needed as it is a common description table header, the same with
 // EFI_ACPI_DESCRIPTION_HEADER, followed by a variable number of UINT64 table pointers.
 //
 
@@ -597,7 +591,7 @@ typedef struct {
 ///
 /// "RSD PTR " Root System Description Pointer
 ///
-#define EFI_ACPI_3_0_ROOT_SYSTEM_DESCRIPTION_POINTER_SIGNATURE  SIGNATURE_64('R', 'S', 'D', ' ', 'P', 'T', 'R', ' ') 
+#define EFI_ACPI_3_0_ROOT_SYSTEM_DESCRIPTION_POINTER_SIGNATURE  SIGNATURE_64('R', 'S', 'D', ' ', 'P', 'T', 'R', ' ')
 
 ///
 /// "APIC" Multiple APIC Description Table
index 94ae5fc..eb08d64 100644 (file)
@@ -1,14 +1,8 @@
-/** @file   
+/** @file
   ACPI 4.0 definitions from the ACPI Specification Revision 4.0a April 5, 2010
 
-  Copyright (c) 2010 - 2011, Intel Corporation. All rights reserved.<BR>
-  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.             
+  Copyright (c) 2010 - 2018, Intel Corporation. All rights reserved.<BR>
+  SPDX-License-Identifier: BSD-2-Clause-Patent
 **/
 
 #ifndef _ACPI_4_0_H_
@@ -86,7 +80,7 @@ typedef struct {
 
 //
 // Root System Description Table
-// No definition needed as it is a common description table header, the same with 
+// No definition needed as it is a common description table header, the same with
 // EFI_ACPI_DESCRIPTION_HEADER, followed by a variable number of UINT32 table pointers.
 //
 
@@ -97,7 +91,7 @@ typedef struct {
 
 //
 // Extended System Description Table
-// No definition needed as it is a common description table header, the same with 
+// No definition needed as it is a common description table header, the same with
 // EFI_ACPI_DESCRIPTION_HEADER, followed by a variable number of UINT64 table pointers.
 //
 
@@ -1132,7 +1126,7 @@ typedef struct {
 ///
 /// "RSD PTR " Root System Description Pointer
 ///
-#define EFI_ACPI_4_0_ROOT_SYSTEM_DESCRIPTION_POINTER_SIGNATURE  SIGNATURE_64('R', 'S', 'D', ' ', 'P', 'T', 'R', ' ') 
+#define EFI_ACPI_4_0_ROOT_SYSTEM_DESCRIPTION_POINTER_SIGNATURE  SIGNATURE_64('R', 'S', 'D', ' ', 'P', 'T', 'R', ' ')
 
 ///
 /// "APIC" Multiple APIC Description Table
index a371c9a..72d02ba 100644 (file)
@@ -1,15 +1,9 @@
-/** @file   
+/** @file
   ACPI 5.0 definitions from the ACPI Specification Revision 5.0a November 13, 2013.
 
   Copyright (c) 2014 Hewlett-Packard Development Company, L.P.<BR>
-  Copyright (c) 2011 - 2014, Intel Corporation. All rights reserved.<BR>
-  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.             
+  Copyright (c) 2011 - 2018, Intel Corporation. All rights reserved.<BR>
+  SPDX-License-Identifier: BSD-2-Clause-Patent
 **/
 
 #ifndef _ACPI_5_0_H_
@@ -208,7 +202,7 @@ typedef struct {
 
 //
 // Root System Description Table
-// No definition needed as it is a common description table header, the same with 
+// No definition needed as it is a common description table header, the same with
 // EFI_ACPI_DESCRIPTION_HEADER, followed by a variable number of UINT32 table pointers.
 //
 
@@ -219,7 +213,7 @@ typedef struct {
 
 //
 // Extended System Description Table
-// No definition needed as it is a common description table header, the same with 
+// No definition needed as it is a common description table header, the same with
 // EFI_ACPI_DESCRIPTION_HEADER, followed by a variable number of UINT64 table pointers.
 //
 
@@ -1876,7 +1870,7 @@ typedef struct {
 ///
 /// "RSD PTR " Root System Description Pointer
 ///
-#define EFI_ACPI_5_0_ROOT_SYSTEM_DESCRIPTION_POINTER_SIGNATURE  SIGNATURE_64('R', 'S', 'D', ' ', 'P', 'T', 'R', ' ') 
+#define EFI_ACPI_5_0_ROOT_SYSTEM_DESCRIPTION_POINTER_SIGNATURE  SIGNATURE_64('R', 'S', 'D', ' ', 'P', 'T', 'R', ' ')
 
 ///
 /// "APIC" Multiple APIC Description Table
index 457706b..0462a9d 100644 (file)
@@ -1,16 +1,10 @@
-/** @file   
+/** @file
   ACPI 5.1 definitions from the ACPI Specification Revision 5.1 Errata B January, 2016.
 
   Copyright (c) 2014 Hewlett-Packard Development Company, L.P.<BR>
-  Copyright (c) 2014 - 2016, Intel Corporation. All rights reserved.<BR>
+  Copyright (c) 2014 - 2018, Intel Corporation. All rights reserved.<BR>
   (C) Copyright 2015 Hewlett Packard Enterprise Development LP<BR>
-  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.             
+  SPDX-License-Identifier: BSD-2-Clause-Patent
 **/
 
 #ifndef _ACPI_5_1_H_
@@ -89,7 +83,7 @@ typedef struct {
 
 //
 // Root System Description Table
-// No definition needed as it is a common description table header, the same with 
+// No definition needed as it is a common description table header, the same with
 // EFI_ACPI_DESCRIPTION_HEADER, followed by a variable number of UINT32 table pointers.
 //
 
@@ -100,7 +94,7 @@ typedef struct {
 
 //
 // Extended System Description Table
-// No definition needed as it is a common description table header, the same with 
+// No definition needed as it is a common description table header, the same with
 // EFI_ACPI_DESCRIPTION_HEADER, followed by a variable number of UINT64 table pointers.
 //
 
@@ -1874,7 +1868,7 @@ typedef struct {
   UINT8                                    CommandComplete:1;
   UINT8                                    SciDoorbell:1;
   UINT8                                    Error:1;
-  UINT8                                    PlatformNotification:1;  
+  UINT8                                    PlatformNotification:1;
   UINT8                                    Reserved:4;
   UINT8                                    Reserved1;
 } EFI_ACPI_5_1_PCCT_GENERIC_SHARED_MEMORY_REGION_STATUS;
@@ -1892,7 +1886,7 @@ typedef struct {
 ///
 /// "RSD PTR " Root System Description Pointer
 ///
-#define EFI_ACPI_5_1_ROOT_SYSTEM_DESCRIPTION_POINTER_SIGNATURE  SIGNATURE_64('R', 'S', 'D', ' ', 'P', 'T', 'R', ' ') 
+#define EFI_ACPI_5_1_ROOT_SYSTEM_DESCRIPTION_POINTER_SIGNATURE  SIGNATURE_64('R', 'S', 'D', ' ', 'P', 'T', 'R', ' ')
 
 ///
 /// "APIC" Multiple APIC Description Table
index 6bc9b0e..055bd0d 100644 (file)
@@ -1,15 +1,9 @@
-/** @file   
+/** @file
   ACPI 6.0 definitions from the ACPI Specification Revision 6.0 Errata A January, 2016.
 
-  Copyright (c) 2015 - 2017, Intel Corporation. All rights reserved.<BR>
+  Copyright (c) 2015 - 2018, Intel Corporation. All rights reserved.<BR>
   (C) Copyright 2015-2016 Hewlett Packard Enterprise Development LP<BR>
-  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.             
+  SPDX-License-Identifier: BSD-2-Clause-Patent
 **/
 
 #ifndef _ACPI_6_0_H_
@@ -88,7 +82,7 @@ typedef struct {
 
 //
 // Root System Description Table
-// No definition needed as it is a common description table header, the same with 
+// No definition needed as it is a common description table header, the same with
 // EFI_ACPI_DESCRIPTION_HEADER, followed by a variable number of UINT32 table pointers.
 //
 
@@ -99,7 +93,7 @@ typedef struct {
 
 //
 // Extended System Description Table
-// No definition needed as it is a common description table header, the same with 
+// No definition needed as it is a common description table header, the same with
 // EFI_ACPI_DESCRIPTION_HEADER, followed by a variable number of UINT64 table pointers.
 //
 
@@ -2063,7 +2057,7 @@ typedef struct {
   UINT8                                    CommandComplete:1;
   UINT8                                    SciDoorbell:1;
   UINT8                                    Error:1;
-  UINT8                                    PlatformNotification:1;  
+  UINT8                                    PlatformNotification:1;
   UINT8                                    Reserved:4;
   UINT8                                    Reserved1;
 } EFI_ACPI_6_0_PCCT_GENERIC_SHARED_MEMORY_REGION_STATUS;
@@ -2125,7 +2119,7 @@ typedef struct {
 ///
 /// "RSD PTR " Root System Description Pointer
 ///
-#define EFI_ACPI_6_0_ROOT_SYSTEM_DESCRIPTION_POINTER_SIGNATURE  SIGNATURE_64('R', 'S', 'D', ' ', 'P', 'T', 'R', ' ') 
+#define EFI_ACPI_6_0_ROOT_SYSTEM_DESCRIPTION_POINTER_SIGNATURE  SIGNATURE_64('R', 'S', 'D', ' ', 'P', 'T', 'R', ' ')
 
 ///
 /// "APIC" Multiple APIC Description Table
index 19d9684..df0f6a0 100644 (file)
@@ -2,13 +2,7 @@
   This file contains AML code definition in the latest ACPI spec.
 
   Copyright (c) 2011, Intel Corporation. All rights reserved.<BR>
-  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.
+  SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
 
index f0b6db1..9694012 100644 (file)
@@ -3,13 +3,7 @@
   These definitions are from Bluetooth Core Specification Version 4.0 June, 2010
 
   Copyright (c) 2015 - 2017, Intel Corporation. All rights reserved.<BR>
-  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.
+  SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
 
index 4bc2109..460b616 100644 (file)
@@ -4,14 +4,8 @@
   The Block IO protocol is used to abstract block devices like hard drives,
   DVD-ROMs and floppy drives.
 
-  Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.<BR>
-  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.             
+  Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
+  SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
 
@@ -27,12 +21,12 @@ typedef struct _EFI_BLOCK_IO_PROTOCOL  EFI_BLOCK_IO_PROTOCOL;
 
 ///
 /// Protocol GUID name defined in EFI1.1.
-/// 
+///
 #define BLOCK_IO_PROTOCOL       EFI_BLOCK_IO_PROTOCOL_GUID
 
 ///
 /// Protocol defined in EFI1.1.
-/// 
+///
 typedef EFI_BLOCK_IO_PROTOCOL   EFI_BLOCK_IO;
 
 /**
@@ -68,7 +62,7 @@ EFI_STATUS
   @retval EFI_NO_MEDIA          There is no media in the device.
   @retval EFI_MEDIA_CHANGED     The MediaId does not matched the current device.
   @retval EFI_BAD_BUFFER_SIZE   The Buffer was not a multiple of the block size of the device.
-  @retval EFI_INVALID_PARAMETER The read request contains LBAs that are not valid, 
+  @retval EFI_INVALID_PARAMETER The read request contains LBAs that are not valid,
                                 or the buffer is not on proper alignment.
 
 **/
@@ -98,7 +92,7 @@ EFI_STATUS
   @retval EFI_NO_MEDIA          There is no media in the device.
   @retval EFI_MEDIA_CHNAGED     The MediaId does not matched the current device.
   @retval EFI_BAD_BUFFER_SIZE   The Buffer was not a multiple of the block size of the device.
-  @retval EFI_INVALID_PARAMETER The write request contains LBAs that are not valid, 
+  @retval EFI_INVALID_PARAMETER The write request contains LBAs that are not valid,
                                 or the buffer is not on proper alignment.
 
 **/
@@ -135,17 +129,17 @@ typedef struct {
   ///
   /// The curent media Id. If the media changes, this value is changed.
   ///
-  UINT32  MediaId;         
-   
+  UINT32  MediaId;
+
   ///
   /// TRUE if the media is removable; otherwise, FALSE.
-  ///    
+  ///
   BOOLEAN RemovableMedia;
-  
+
   ///
   /// TRUE if there is a media currently present in the device;
   /// othersise, FALSE. THis field shows the media present status
-  /// as of the most recent ReadBlocks() or WriteBlocks() call.  
+  /// as of the most recent ReadBlocks() or WriteBlocks() call.
   ///
   BOOLEAN MediaPresent;
 
@@ -154,45 +148,45 @@ typedef struct {
   /// FALSE. For media with only one partition this would be TRUE.
   ///
   BOOLEAN LogicalPartition;
-  
+
   ///
   /// TRUE if the media is marked read-only otherwise, FALSE.
   /// This field shows the read-only status as of the most recent WriteBlocks () call.
   ///
   BOOLEAN ReadOnly;
-  
+
   ///
   /// TRUE if the WriteBlock () function caches write data.
   ///
-  BOOLEAN WriteCaching; 
-  
+  BOOLEAN WriteCaching;
+
   ///
   /// The intrinsic block size of the device. If the media changes, then
-  /// this field is updated.  
+  /// this field is updated.
   ///
-  UINT32  BlockSize; 
-  
+  UINT32  BlockSize;
+
   ///
   /// Supplies the alignment requirement for any buffer to read or write block(s).
   ///
-  UINT32  IoAlign; 
-  
+  UINT32  IoAlign;
+
   ///
   /// The last logical block address on the device.
-  /// If the media changes, then this field is updated. 
+  /// If the media changes, then this field is updated.
   ///
-  EFI_LBA LastBlock; 
+  EFI_LBA LastBlock;
 
   ///
   /// Only present if EFI_BLOCK_IO_PROTOCOL.Revision is greater than or equal to
-  /// EFI_BLOCK_IO_PROTOCOL_REVISION2. Returns the first LBA is aligned to 
-  /// a physical block boundary. 
+  /// EFI_BLOCK_IO_PROTOCOL_REVISION2. Returns the first LBA is aligned to
+  /// a physical block boundary.
   ///
   EFI_LBA LowestAlignedLba;
 
   ///
   /// Only present if EFI_BLOCK_IO_PROTOCOL.Revision is greater than or equal to
-  /// EFI_BLOCK_IO_PROTOCOL_REVISION2. Returns the number of logical blocks 
+  /// EFI_BLOCK_IO_PROTOCOL_REVISION2. Returns the number of logical blocks
   /// per physical block.
   ///
   UINT32 LogicalBlocksPerPhysicalBlock;
@@ -211,7 +205,7 @@ typedef struct {
 
 ///
 /// Revision defined in EFI1.1.
-/// 
+///
 #define EFI_BLOCK_IO_INTERFACE_REVISION   EFI_BLOCK_IO_PROTOCOL_REVISION
 
 ///
index 81d47c0..34fd27d 100644 (file)
@@ -2,17 +2,11 @@
   The device path protocol as defined in UEFI 2.0.
 
   The device path represents a programmatic path to a device,
-  from a software point of view. The path must persist from boot to boot, so 
+  from a software point of view. The path must persist from boot to boot, so
   it can not contain things like PCI bus numbers that change from boot to boot.
 
-Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
-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.              
+Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
+SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
 
@@ -39,11 +33,11 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #pragma pack(1)
 
 /**
-  This protocol can be used on any device handle to obtain generic path/location 
-  information concerning the physical device or logical device. If the handle does 
-  not logically map to a physical device, the handle may not necessarily support 
-  the device path protocol. The device path describes the location of the device 
-  the handle is for. The size of the Device Path can be determined from the structures 
+  This protocol can be used on any device handle to obtain generic path/location
+  information concerning the physical device or logical device. If the handle does
+  not logically map to a physical device, the handle may not necessarily support
+  the device path protocol. The device path describes the location of the device
+  the handle is for. The size of the Device Path can be determined from the structures
   that make up the Device Path.
 **/
 typedef struct {
@@ -53,20 +47,20 @@ typedef struct {
                     ///< 0x04 Media Device Path.
                     ///< 0x05 BIOS Boot Specification Device Path.
                     ///< 0x7F End of Hardware Device Path.
-                    
+
   UINT8 SubType;    ///< Varies by Type
                     ///< 0xFF End Entire Device Path, or
                     ///< 0x01 End This Instance of a Device Path and start a new
                     ///< Device Path.
-                    
+
   UINT8 Length[2];  ///< Specific Device Path data. Type and Sub-Type define
                     ///< type of data. Size of data is included in Length.
-                    
+
 } EFI_DEVICE_PATH_PROTOCOL;
 
 ///
 /// Device Path protocol definition for backward-compatible with EFI1.1.
-/// 
+///
 typedef EFI_DEVICE_PATH_PROTOCOL  EFI_DEVICE_PATH;
 
 ///
@@ -1072,8 +1066,8 @@ typedef struct {
 #define MEDIA_PROTOCOL_DP         0x05
 
 ///
-/// The Media Protocol Device Path is used to denote the protocol that is being 
-/// used in a device path at the location of the path specified. 
+/// The Media Protocol Device Path is used to denote the protocol that is being
+/// used in a device path at the location of the path specified.
 /// Many protocols are inherent to the style of device path.
 ///
 typedef struct {
@@ -1268,7 +1262,7 @@ typedef union {
   SAS_DEVICE_PATH                            Sas;
   SASEX_DEVICE_PATH                          SasEx;
   NVME_NAMESPACE_DEVICE_PATH                 NvmeNamespace;
-  DNS_DEVICE_PATH                            Dns; 
+  DNS_DEVICE_PATH                            Dns;
   URI_DEVICE_PATH                            Uri;
   BLUETOOTH_DEVICE_PATH                      Bluetooth;
   WIFI_DEVICE_PATH                           WiFi;
@@ -1348,7 +1342,7 @@ typedef union {
 } EFI_DEV_PATH_PTR;
 
 #pragma pack()
-                                             
+
 #define END_DEVICE_PATH_TYPE                 0x7f
 #define END_ENTIRE_DEVICE_PATH_SUBTYPE       0xFF
 #define END_INSTANCE_DEVICE_PATH_SUBTYPE     0x01
index a3432ce..9ba38c5 100644 (file)
@@ -3,14 +3,8 @@
 
   Abstraction of a very simple graphics device.
 
-  Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.<BR>
-  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.             
+  Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
+  SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
 
@@ -33,18 +27,18 @@ typedef struct {
 
 typedef enum {
   ///
-  /// A pixel is 32-bits and byte zero represents red, byte one represents green, 
-  /// byte two represents blue, and byte three is reserved. This is the definition 
-  /// for the physical frame buffer. The byte values for the red, green, and blue 
-  /// components represent the color intensity. This color intensity value range 
+  /// A pixel is 32-bits and byte zero represents red, byte one represents green,
+  /// byte two represents blue, and byte three is reserved. This is the definition
+  /// for the physical frame buffer. The byte values for the red, green, and blue
+  /// components represent the color intensity. This color intensity value range
   /// from a minimum intensity of 0 to maximum intensity of 255.
   ///
   PixelRedGreenBlueReserved8BitPerColor,
   ///
-  /// A pixel is 32-bits and byte zero represents blue, byte one represents green, 
-  /// byte two represents red, and byte three is reserved. This is the definition 
-  /// for the physical frame buffer. The byte values for the red, green, and blue 
-  /// components represent the color intensity. This color intensity value range 
+  /// A pixel is 32-bits and byte zero represents blue, byte one represents green,
+  /// byte two represents red, and byte three is reserved. This is the definition
+  /// for the physical frame buffer. The byte values for the red, green, and blue
+  /// components represent the color intensity. This color intensity value range
   /// from a minimum intensity of 0 to maximum intensity of 255.
   ///
   PixelBlueGreenRedReserved8BitPerColor,
@@ -64,7 +58,7 @@ typedef enum {
 
 typedef struct {
   ///
-  /// The version of this data structure. A value of zero represents the 
+  /// The version of this data structure. A value of zero represents the
   /// EFI_GRAPHICS_OUTPUT_MODE_INFORMATION structure as defined in this specification.
   ///
   UINT32                     Version;
@@ -77,18 +71,18 @@ typedef struct {
   ///
   UINT32                     VerticalResolution;
   ///
-  /// Enumeration that defines the physical format of the pixel. A value of PixelBltOnly 
+  /// Enumeration that defines the physical format of the pixel. A value of PixelBltOnly
   /// implies that a linear frame buffer is not available for this mode.
   ///
   EFI_GRAPHICS_PIXEL_FORMAT  PixelFormat;
   ///
-  /// This bit-mask is only valid if PixelFormat is set to PixelPixelBitMask. 
+  /// This bit-mask is only valid if PixelFormat is set to PixelPixelBitMask.
   /// A bit being set defines what bits are used for what purpose such as Red, Green, Blue, or Reserved.
   ///
   EFI_PIXEL_BITMASK          PixelInformation;
   ///
   /// Defines the number of pixel elements per video memory line.
-  /// 
+  ///
   UINT32                     PixelsPerScanLine;
 } EFI_GRAPHICS_OUTPUT_MODE_INFORMATION;
 
@@ -116,7 +110,7 @@ EFI_STATUS
   );
 
 /**
-  Set the video device into the specified mode and clears the visible portions of 
+  Set the video device into the specified mode and clears the visible portions of
   the output display to black.
 
   @param  This              The EFI_GRAPHICS_OUTPUT_PROTOCOL instance.
@@ -151,47 +145,47 @@ typedef union {
 ///
 typedef enum {
   ///
-  /// Write data from the BltBuffer pixel (0, 0) 
-  /// directly to every pixel of the video display rectangle 
-  /// (DestinationX, DestinationY) (DestinationX + Width, DestinationY + Height). 
-  /// Only one pixel will be used from the BltBuffer. Delta is NOT used.  
+  /// Write data from the BltBuffer pixel (0, 0)
+  /// directly to every pixel of the video display rectangle
+  /// (DestinationX, DestinationY) (DestinationX + Width, DestinationY + Height).
+  /// Only one pixel will be used from the BltBuffer. Delta is NOT used.
   ///
   EfiBltVideoFill,
-  
+
   ///
-  /// Read data from the video display rectangle 
-  /// (SourceX, SourceY) (SourceX + Width, SourceY + Height) and place it in 
-  /// the BltBuffer rectangle (DestinationX, DestinationY ) 
-  /// (DestinationX + Width, DestinationY + Height). If DestinationX or 
-  /// DestinationY is not zero then Delta must be set to the length in bytes 
-  /// of a row in the BltBuffer.  
+  /// Read data from the video display rectangle
+  /// (SourceX, SourceY) (SourceX + Width, SourceY + Height) and place it in
+  /// the BltBuffer rectangle (DestinationX, DestinationY )
+  /// (DestinationX + Width, DestinationY + Height). If DestinationX or
+  /// DestinationY is not zero then Delta must be set to the length in bytes
+  /// of a row in the BltBuffer.
   ///
   EfiBltVideoToBltBuffer,
-  
+
   ///
-  /// Write data from the BltBuffer rectangle 
-  /// (SourceX, SourceY) (SourceX + Width, SourceY + Height) directly to the 
-  /// video display rectangle (DestinationX, DestinationY) 
-  /// (DestinationX + Width, DestinationY + Height). If SourceX or SourceY is 
-  /// not zero then Delta must be set to the length in bytes of a row in the 
+  /// Write data from the BltBuffer rectangle
+  /// (SourceX, SourceY) (SourceX + Width, SourceY + Height) directly to the
+  /// video display rectangle (DestinationX, DestinationY)
+  /// (DestinationX + Width, DestinationY + Height). If SourceX or SourceY is
+  /// not zero then Delta must be set to the length in bytes of a row in the
   /// BltBuffer.
   ///
-  EfiBltBufferToVideo, 
-  
+  EfiBltBufferToVideo,
+
   ///
   /// Copy from the video display rectangle (SourceX, SourceY)
-  /// (SourceX + Width, SourceY + Height) to the video display rectangle 
-  /// (DestinationX, DestinationY) (DestinationX + Width, DestinationY + Height). 
+  /// (SourceX + Width, SourceY + Height) to the video display rectangle
+  /// (DestinationX, DestinationY) (DestinationX + Width, DestinationY + Height).
   /// The BltBuffer and Delta are not used in this mode.
   ///
   EfiBltVideoToVideo,
-  
+
   EfiGraphicsOutputBltOperationMax
 } EFI_GRAPHICS_OUTPUT_BLT_OPERATION;
 
 /**
   Blt a rectangle of pixels on the graphics screen. Blt stands for BLock Transfer.
-  
+
   @param  This         Protocol instance pointer.
   @param  BltBuffer    The data to transfer to the graphics screen.
                        Size is at least Width*Height*sizeof(EFI_GRAPHICS_OUTPUT_BLT_PIXEL).
@@ -250,15 +244,15 @@ typedef struct {
   ///
   EFI_PHYSICAL_ADDRESS                   FrameBufferBase;
   ///
-  /// Amount of frame buffer needed to support the active mode as defined by 
+  /// Amount of frame buffer needed to support the active mode as defined by
   /// PixelsPerScanLine xVerticalResolution x PixelElementSize.
   ///
   UINTN                                  FrameBufferSize;
 } EFI_GRAPHICS_OUTPUT_PROTOCOL_MODE;
 
 ///
-/// Provides a basic abstraction to set video modes and copy pixels to and from 
-/// the graphics controller's frame buffer. The linear address of the hardware 
+/// Provides a basic abstraction to set video modes and copy pixels to and from
+/// the graphics controller's frame buffer. The linear address of the hardware
 /// frame buffer is also exposed so software can write directly to the video hardware.
 ///
 struct _EFI_GRAPHICS_OUTPUT_PROTOCOL {
index 53971bc..6b4aee6 100644 (file)
@@ -4,14 +4,8 @@
   Every EFI driver and application is passed an image handle when it is loaded.
   This image handle will contain a Loaded Image Protocol.
 
-  Copyright (c) 2006 - 2008, Intel Corporation. All rights reserved.<BR>
-  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.             
+  Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
+  SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
 
@@ -30,7 +24,7 @@
 
 ///
 /// Protocol GUID defined in EFI1.1.
-/// 
+///
 #define LOADED_IMAGE_PROTOCOL   EFI_LOADED_IMAGE_PROTOCOL_GUID
 
 ///
 
 ///
 /// Revision defined in EFI1.1.
-/// 
+///
 #define EFI_LOADED_IMAGE_INFORMATION_REVISION    EFI_LOADED_IMAGE_PROTOCOL_REVISION
 
 ///
 /// Can be used on any image handle to obtain information about the loaded image.
 ///
 typedef struct {
-  UINT32            Revision;       ///< Defines the revision of the EFI_LOADED_IMAGE_PROTOCOL structure. 
+  UINT32            Revision;       ///< Defines the revision of the EFI_LOADED_IMAGE_PROTOCOL structure.
                                     ///< All future revisions will be backward compatible to the current revision.
-  EFI_HANDLE        ParentHandle;   ///< Parent image's image handle. NULL if the image is loaded directly from 
-                                    ///< the firmware's boot manager. 
+  EFI_HANDLE        ParentHandle;   ///< Parent image's image handle. NULL if the image is loaded directly from
+                                    ///< the firmware's boot manager.
   EFI_SYSTEM_TABLE  *SystemTable;   ///< the image's EFI system table pointer.
 
   //
   // Source location of image
   //
-  EFI_HANDLE        DeviceHandle;   ///< The device handle that the EFI Image was loaded from. 
-  EFI_DEVICE_PATH_PROTOCOL  *FilePath;  ///< A pointer to the file path portion specific to DeviceHandle 
-                                        ///< that the EFI Image was loaded from. 
+  EFI_HANDLE        DeviceHandle;   ///< The device handle that the EFI Image was loaded from.
+  EFI_DEVICE_PATH_PROTOCOL  *FilePath;  ///< A pointer to the file path portion specific to DeviceHandle
+                                        ///< that the EFI Image was loaded from.
   VOID              *Reserved;      ///< Reserved. DO NOT USE.
 
   //
@@ -79,7 +73,7 @@ typedef struct {
 
 //
 // For backward-compatible with EFI1.1.
-// 
+//
 typedef EFI_LOADED_IMAGE_PROTOCOL EFI_LOADED_IMAGE;
 
 extern EFI_GUID gEfiLoadedImageProtocolGuid;
index 1b76545..f80374a 100644 (file)
@@ -1,14 +1,8 @@
 /** @file
   EFI Network Interface Identifier Protocol.
 
-Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.<BR>
-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.
+Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
+SPDX-License-Identifier: BSD-2-Clause-Patent
 
   @par Revision Reference:
   This Protocol is introduced in EFI Specification 1.10.
@@ -74,8 +68,8 @@ struct _EFI_NETWORK_INTERFACE_IDENTIFIER_PROTOCOL {
   UINT8     MajorVer;   ///< Major version number.
   UINT8     MinorVer;   ///< Minor version number.
   BOOLEAN   Ipv6Supported; ///< TRUE if the network interface supports IPv6; otherwise FALSE.
-  UINT16    IfNum;      ///< The network interface number that is being identified by this Network 
-                        ///< Interface Identifier Protocol. This field must be less than or 
+  UINT16    IfNum;      ///< The network interface number that is being identified by this Network
+                        ///< Interface Identifier Protocol. This field must be less than or
                         ///< equal to the (IFcnt | IFcntExt <<8 ) fields in the !PXE structure.
 
 };
@@ -109,7 +103,7 @@ struct undiconfig_table {
   struct {
     VOID             *NII_InterfacePointer; ///< Pointer to the NII interface structure.
     VOID             *DevicePathPointer;    ///< Pointer to the device path for this NIC.
-  } NII_entry[1]; 
+  } NII_entry[1];
 };
 
 extern EFI_GUID gEfiNetworkInterfaceIdentifierProtocolGuid;
index 6c51e85..420b8cb 100644 (file)
@@ -1,15 +1,9 @@
 /** @file
-  EFI PCI I/O Protocol provides the basic Memory, I/O, PCI configuration, 
+  EFI PCI I/O Protocol provides the basic Memory, I/O, PCI configuration,
   and DMA interfaces that a driver uses to access its PCI controller.
 
-  Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
-  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.             
+  Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
+  SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
 
@@ -126,27 +120,27 @@ typedef enum {
   EfiPciIoAttributeOperationMaximum
 } EFI_PCI_IO_PROTOCOL_ATTRIBUTE_OPERATION;
 
-/**                                                                 
+/**
   Reads from the memory space of a PCI controller. Returns either when the polling exit criteria is
-  satisfied or after a defined duration.                                                           
-          
+  satisfied or after a defined duration.
+
   @param  This                  A pointer to the EFI_PCI_IO_PROTOCOL instance.
   @param  Width                 Signifies the width of the memory or I/O operations.
   @param  BarIndex              The BAR index of the standard PCI Configuration header to use as the
-                                base address for the memory operation to perform.                   
+                                base address for the memory operation to perform.
   @param  Offset                The offset within the selected BAR to start the memory operation.
   @param  Mask                  Mask used for the polling criteria.
   @param  Value                 The comparison value used for the polling exit criteria.
   @param  Delay                 The number of 100 ns units to poll.
   @param  Result                Pointer to the last value read from the memory location.
-                                
+
   @retval EFI_SUCCESS           The last data returned from the access matched the poll exit criteria.
   @retval EFI_UNSUPPORTED       BarIndex not valid for this PCI controller.
   @retval EFI_UNSUPPORTED       Offset is not valid for the BarIndex of this PCI controller.
   @retval EFI_TIMEOUT           Delay expired before a match occurred.
   @retval EFI_OUT_OF_RESOURCES  The request could not be completed due to a lack of resources.
   @retval EFI_INVALID_PARAMETER One or more parameters are invalid.
-                                   
+
 **/
 typedef
 EFI_STATUS
@@ -161,25 +155,25 @@ EFI_STATUS
   OUT UINT64                       *Result
   );
 
-/**                                                                 
+/**
   Enable a PCI driver to access PCI controller registers in the PCI memory or I/O space.
-          
+
   @param  This                  A pointer to the EFI_PCI_IO_PROTOCOL instance.
   @param  Width                 Signifies the width of the memory or I/O operations.
   @param  BarIndex              The BAR index of the standard PCI Configuration header to use as the
-                                base address for the memory or I/O operation to perform.                    
-  @param  Offset                The offset within the selected BAR to start the memory or I/O operation.                                
+                                base address for the memory or I/O operation to perform.
+  @param  Offset                The offset within the selected BAR to start the memory or I/O operation.
   @param  Count                 The number of memory or I/O operations to perform.
   @param  Buffer                For read operations, the destination buffer to store the results. For write
-                                operations, the source buffer to write data from.                          
-  
+                                operations, the source buffer to write data from.
+
   @retval EFI_SUCCESS           The data was read from or written to the PCI controller.
   @retval EFI_UNSUPPORTED       BarIndex not valid for this PCI controller.
   @retval EFI_UNSUPPORTED       The address range specified by Offset, Width, and Count is not
-                                valid for the PCI BAR specified by BarIndex.                  
+                                valid for the PCI BAR specified by BarIndex.
   @retval EFI_OUT_OF_RESOURCES  The request could not be completed due to a lack of resources.
   @retval EFI_INVALID_PARAMETER One or more parameters are invalid.
-                                   
+
 **/
 typedef
 EFI_STATUS
@@ -203,23 +197,23 @@ typedef struct {
   EFI_PCI_IO_PROTOCOL_IO_MEM  Write;
 } EFI_PCI_IO_PROTOCOL_ACCESS;
 
-/**                                                                 
+/**
   Enable a PCI driver to access PCI controller registers in PCI configuration space.
-            
-  @param  This                  A pointer to the EFI_PCI_IO_PROTOCOL instance.  
+
+  @param  This                  A pointer to the EFI_PCI_IO_PROTOCOL instance.
   @param  Width                 Signifies the width of the memory operations.
   @param  Offset                The offset within the PCI configuration space for the PCI controller.
   @param  Count                 The number of PCI configuration operations to perform.
   @param  Buffer                For read operations, the destination buffer to store the results. For write
                                 operations, the source buffer to write data from.
-  
-                                  
+
+
   @retval EFI_SUCCESS           The data was read from or written to the PCI controller.
   @retval EFI_UNSUPPORTED       The address range specified by Offset, Width, and Count is not
                                 valid for the PCI configuration header of the PCI controller.
-  @retval EFI_OUT_OF_RESOURCES  The request could not be completed due to a lack of resources.                                 
-  @retval EFI_INVALID_PARAMETER Buffer is NULL or Width is invalid.                                
-                                     
+  @retval EFI_OUT_OF_RESOURCES  The request could not be completed due to a lack of resources.
+  @retval EFI_INVALID_PARAMETER Buffer is NULL or Width is invalid.
+
 **/
 typedef
 EFI_STATUS
@@ -242,33 +236,33 @@ typedef struct {
   EFI_PCI_IO_PROTOCOL_CONFIG  Write;
 } EFI_PCI_IO_PROTOCOL_CONFIG_ACCESS;
 
-/**                                                                 
+/**
   Enables a PCI driver to copy one region of PCI memory space to another region of PCI
   memory space.
-            
+
   @param  This                  A pointer to the EFI_PCI_IO_PROTOCOL instance.
   @param  Width                 Signifies the width of the memory operations.
   @param  DestBarIndex          The BAR index in the standard PCI Configuration header to use as the
-                                base address for the memory operation to perform.                   
+                                base address for the memory operation to perform.
   @param  DestOffset            The destination offset within the BAR specified by DestBarIndex to
-                                start the memory writes for the copy operation.                   
+                                start the memory writes for the copy operation.
   @param  SrcBarIndex           The BAR index in the standard PCI Configuration header to use as the
-                                base address for the memory operation to perform.                   
+                                base address for the memory operation to perform.
   @param  SrcOffset             The source offset within the BAR specified by SrcBarIndex to start
-                                the memory reads for the copy operation.                          
+                                the memory reads for the copy operation.
   @param  Count                 The number of memory operations to perform. Bytes moved is Width
-                                size * Count, starting at DestOffset and SrcOffset.             
-                                
+                                size * Count, starting at DestOffset and SrcOffset.
+
   @retval EFI_SUCCESS           The data was copied from one memory region to another memory region.
   @retval EFI_UNSUPPORTED       DestBarIndex not valid for this PCI controller.
   @retval EFI_UNSUPPORTED       SrcBarIndex not valid for this PCI controller.
   @retval EFI_UNSUPPORTED       The address range specified by DestOffset, Width, and Count
-                                is not valid for the PCI BAR specified by DestBarIndex.    
+                                is not valid for the PCI BAR specified by DestBarIndex.
   @retval EFI_UNSUPPORTED       The address range specified by SrcOffset, Width, and Count is
-                                not valid for the PCI BAR specified by SrcBarIndex.          
+                                not valid for the PCI BAR specified by SrcBarIndex.
   @retval EFI_INVALID_PARAMETER Width is invalid.
   @retval EFI_OUT_OF_RESOURCES  The request could not be completed due to a lack of resources.
-                                   
+
 **/
 typedef
 EFI_STATUS
@@ -282,24 +276,24 @@ EFI_STATUS
   IN     UINTN                        Count
   );
 
-/**                                                                 
+/**
   Provides the PCI controller-specific addresses needed to access system memory.
-            
+
   @param  This                  A pointer to the EFI_PCI_IO_PROTOCOL instance.
   @param  Operation             Indicates if the bus master is going to read or write to system memory.
   @param  HostAddress           The system memory address to map to the PCI controller.
   @param  NumberOfBytes         On input the number of bytes to map. On output the number of bytes
-                                that were mapped.                                                 
+                                that were mapped.
   @param  DeviceAddress         The resulting map address for the bus master PCI controller to use to
-                                access the hosts HostAddress.                                        
+                                access the hosts HostAddress.
   @param  Mapping               A resulting value to pass to Unmap().
-                                  
+
   @retval EFI_SUCCESS           The range was mapped for the returned NumberOfBytes.
-  @retval EFI_UNSUPPORTED       The HostAddress cannot be mapped as a common buffer.                                
+  @retval EFI_UNSUPPORTED       The HostAddress cannot be mapped as a common buffer.
   @retval EFI_INVALID_PARAMETER One or more parameters are invalid.
   @retval EFI_OUT_OF_RESOURCES  The request could not be completed due to a lack of resources.
   @retval EFI_DEVICE_ERROR      The system hardware could not map the requested address.
-                                   
+
 **/
 typedef
 EFI_STATUS
@@ -312,15 +306,15 @@ EFI_STATUS
   OUT    VOID                           **Mapping
   );
 
-/**                                                                 
+/**
   Completes the Map() operation and releases any corresponding resources.
-            
-  @param  This                  A pointer to the EFI_PCI_IO_PROTOCOL instance.                                      
+
+  @param  This                  A pointer to the EFI_PCI_IO_PROTOCOL instance.
   @param  Mapping               The mapping value returned from Map().
-                                  
+
   @retval EFI_SUCCESS           The range was unmapped.
   @retval EFI_DEVICE_ERROR      The data was not committed to the target system memory.
-                                   
+
 **/
 typedef
 EFI_STATUS
@@ -329,25 +323,25 @@ EFI_STATUS
   IN  VOID                         *Mapping
   );
 
-/**                                                                 
+/**
   Allocates pages that are suitable for an EfiPciIoOperationBusMasterCommonBuffer
   or EfiPciOperationBusMasterCommonBuffer64 mapping.
-            
+
   @param  This                  A pointer to the EFI_PCI_IO_PROTOCOL instance.
   @param  Type                  This parameter is not used and must be ignored.
   @param  MemoryType            The type of memory to allocate, EfiBootServicesData or
-                                EfiRuntimeServicesData.                               
-  @param  Pages                 The number of pages to allocate.                                
+                                EfiRuntimeServicesData.
+  @param  Pages                 The number of pages to allocate.
   @param  HostAddress           A pointer to store the base system memory address of the
-                                allocated range.                                        
+                                allocated range.
   @param  Attributes            The requested bit mask of attributes for the allocated range.
-                                  
+
   @retval EFI_SUCCESS           The requested memory pages were allocated.
   @retval EFI_UNSUPPORTED       Attributes is unsupported. The only legal attribute bits are
                                 MEMORY_WRITE_COMBINE, MEMORY_CACHED and DUAL_ADDRESS_CYCLE.
   @retval EFI_INVALID_PARAMETER One or more parameters are invalid.
-  @retval EFI_OUT_OF_RESOURCES  The memory pages could not be allocated.  
-                                   
+  @retval EFI_OUT_OF_RESOURCES  The memory pages could not be allocated.
+
 **/
 typedef
 EFI_STATUS
@@ -360,17 +354,17 @@ EFI_STATUS
   IN  UINT64                       Attributes
   );
 
-/**                                                                 
+/**
   Frees memory that was allocated with AllocateBuffer().
-            
-  @param  This                  A pointer to the EFI_PCI_IO_PROTOCOL instance.  
-  @param  Pages                 The number of pages to free.                                
-  @param  HostAddress           The base system memory address of the allocated range.                                    
-                                  
+
+  @param  This                  A pointer to the EFI_PCI_IO_PROTOCOL instance.
+  @param  Pages                 The number of pages to free.
+  @param  HostAddress           The base system memory address of the allocated range.
+
   @retval EFI_SUCCESS           The requested memory pages were freed.
   @retval EFI_INVALID_PARAMETER The memory range specified by HostAddress and Pages
                                 was not allocated with AllocateBuffer().
-                                     
+
 **/
 typedef
 EFI_STATUS
@@ -380,16 +374,16 @@ EFI_STATUS
   IN  VOID                         *HostAddress
   );
 
-/**                                                                 
+/**
   Flushes all PCI posted write transactions from a PCI host bridge to system memory.
-            
-  @param  This                  A pointer to the EFI_PCI_IO_PROTOCOL instance.  
-                                  
+
+  @param  This                  A pointer to the EFI_PCI_IO_PROTOCOL instance.
+
   @retval EFI_SUCCESS           The PCI posted write transactions were flushed from the PCI host
-                                bridge to system memory.                                        
+                                bridge to system memory.
   @retval EFI_DEVICE_ERROR      The PCI posted write transactions were not flushed from the PCI
-                                host bridge due to a hardware error.                           
-                                     
+                                host bridge due to a hardware error.
+
 **/
 typedef
 EFI_STATUS
@@ -397,18 +391,18 @@ EFI_STATUS
   IN EFI_PCI_IO_PROTOCOL  *This
   );
 
-/**                                                                 
+/**
   Retrieves this PCI controller's current PCI bus number, device number, and function number.
-            
-  @param  This                  A pointer to the EFI_PCI_IO_PROTOCOL instance.  
+
+  @param  This                  A pointer to the EFI_PCI_IO_PROTOCOL instance.
   @param  SegmentNumber         The PCI controller's current PCI segment number.
   @param  BusNumber             The PCI controller's current PCI bus number.
   @param  DeviceNumber          The PCI controller's current PCI device number.
   @param  FunctionNumber        The PCI controller's current PCI function number.
-                                  
-  @retval EFI_SUCCESS           The PCI controller location was returned.                                                       
-  @retval EFI_INVALID_PARAMETER One or more parameters are invalid.                              
-                                     
+
+  @retval EFI_SUCCESS           The PCI controller location was returned.
+  @retval EFI_INVALID_PARAMETER One or more parameters are invalid.
+
 **/
 typedef
 EFI_STATUS
@@ -420,24 +414,24 @@ EFI_STATUS
   OUT UINTN                       *FunctionNumber
   );
 
-/**                                                                 
+/**
   Performs an operation on the attributes that this PCI controller supports. The operations include
-  getting the set of supported attributes, retrieving the current attributes, setting the current  
-  attributes, enabling attributes, and disabling attributes.                                       
-            
-  @param  This                  A pointer to the EFI_PCI_IO_PROTOCOL instance.  
+  getting the set of supported attributes, retrieving the current attributes, setting the current
+  attributes, enabling attributes, and disabling attributes.
+
+  @param  This                  A pointer to the EFI_PCI_IO_PROTOCOL instance.
   @param  Operation             The operation to perform on the attributes for this PCI controller.
   @param  Attributes            The mask of attributes that are used for Set, Enable, and Disable
-                                operations.                                                      
+                                operations.
   @param  Result                A pointer to the result mask of attributes that are returned for the Get
-                                and Supported operations.                                               
-                                  
+                                and Supported operations.
+
   @retval EFI_SUCCESS           The operation on the PCI controller's attributes was completed.
-  @retval EFI_INVALID_PARAMETER One or more parameters are invalid.                              
-  @retval EFI_UNSUPPORTED       one or more of the bits set in                               
+  @retval EFI_INVALID_PARAMETER One or more parameters are invalid.
+  @retval EFI_UNSUPPORTED       one or more of the bits set in
                                 Attributes are not supported by this PCI controller or one of
                                 its parent bridges when Operation is Set, Enable or Disable.
-                                       
+
 **/
 typedef
 EFI_STATUS
@@ -459,7 +453,7 @@ EFI_STATUS
                                 setting for this BAR with SetBarAttributes().
   @param  Resources             A pointer to the resource descriptors that describe the current
                                 configuration of this BAR of the PCI controller.
-                                  
+
   @retval EFI_SUCCESS           If Supports is not NULL, then the attributes that the PCI
                                 controller supports are returned in Supports. If Resources
                                 is not NULL, then the resource descriptors that the PCI
@@ -478,29 +472,29 @@ EFI_STATUS
   OUT VOID                           **Resources OPTIONAL
   );
 
-/**                                                                 
+/**
   Sets the attributes for a range of a BAR on a PCI controller.
-            
-  @param  This                  A pointer to the EFI_PCI_IO_PROTOCOL instance.  
+
+  @param  This                  A pointer to the EFI_PCI_IO_PROTOCOL instance.
   @param  Attributes            The mask of attributes to set for the resource range specified by
-                                BarIndex, Offset, and Length.                                    
+                                BarIndex, Offset, and Length.
   @param  BarIndex              The BAR index of the standard PCI Configuration header to use as the
                                 base address for resource range. The legal range for this field is 0..5.
   @param  Offset                A pointer to the BAR relative base address of the resource range to be
-                                modified by the attributes specified by Attributes.                   
+                                modified by the attributes specified by Attributes.
   @param  Length                A pointer to the length of the resource range to be modified by the
-                                attributes specified by Attributes.                                
-                                  
-  @retval EFI_SUCCESS           The set of attributes specified by Attributes for the resource      
-                                range specified by BarIndex, Offset, and Length were                
+                                attributes specified by Attributes.
+
+  @retval EFI_SUCCESS           The set of attributes specified by Attributes for the resource
+                                range specified by BarIndex, Offset, and Length were
                                 set on the PCI controller, and the actual resource range is returned
-                                in Offset and Length.                                               
+                                in Offset and Length.
   @retval EFI_INVALID_PARAMETER Offset or Length is NULL.
   @retval EFI_UNSUPPORTED       BarIndex not valid for this PCI controller.
   @retval EFI_OUT_OF_RESOURCES  There are not enough resources to set the attributes on the
-                                resource range specified by BarIndex, Offset, and          
-                                Length.                                                    
-                                
+                                resource range specified by BarIndex, Offset, and
+                                Length.
+
 **/
 typedef
 EFI_STATUS
@@ -513,11 +507,11 @@ EFI_STATUS
   );
 
 ///
-/// The EFI_PCI_IO_PROTOCOL provides the basic Memory, I/O, PCI configuration, 
-/// and DMA interfaces used to abstract accesses to PCI controllers. 
-/// There is one EFI_PCI_IO_PROTOCOL instance for each PCI controller on a PCI bus. 
-/// A device driver that wishes to manage a PCI controller in a system will have to 
-/// retrieve the EFI_PCI_IO_PROTOCOL instance that is associated with the PCI controller. 
+/// The EFI_PCI_IO_PROTOCOL provides the basic Memory, I/O, PCI configuration,
+/// and DMA interfaces used to abstract accesses to PCI controllers.
+/// There is one EFI_PCI_IO_PROTOCOL instance for each PCI controller on a PCI bus.
+/// A device driver that wishes to manage a PCI controller in a system will have to
+/// retrieve the EFI_PCI_IO_PROTOCOL instance that is associated with the PCI controller.
 ///
 struct _EFI_PCI_IO_PROTOCOL {
   EFI_PCI_IO_PROTOCOL_POLL_IO_MEM         PollMem;
@@ -535,20 +529,20 @@ struct _EFI_PCI_IO_PROTOCOL {
   EFI_PCI_IO_PROTOCOL_ATTRIBUTES          Attributes;
   EFI_PCI_IO_PROTOCOL_GET_BAR_ATTRIBUTES  GetBarAttributes;
   EFI_PCI_IO_PROTOCOL_SET_BAR_ATTRIBUTES  SetBarAttributes;
-  
+
   ///
   /// The size, in bytes, of the ROM image.
   ///
   UINT64                                  RomSize;
 
   ///
-  /// A pointer to the in memory copy of the ROM image. The PCI Bus Driver is responsible 
-  /// for allocating memory for the ROM image, and copying the contents of the ROM to memory. 
-  /// The contents of this buffer are either from the PCI option ROM that can be accessed 
-  /// through the ROM BAR of the PCI controller, or it is from a platform-specific location. 
-  /// The Attributes() function can be used to determine from which of these two sources 
+  /// A pointer to the in memory copy of the ROM image. The PCI Bus Driver is responsible
+  /// for allocating memory for the ROM image, and copying the contents of the ROM to memory.
+  /// The contents of this buffer are either from the PCI option ROM that can be accessed
+  /// through the ROM BAR of the PCI controller, or it is from a platform-specific location.
+  /// The Attributes() function can be used to determine from which of these two sources
   /// the RomImage buffer was initialized.
-  /// 
+  ///
   VOID                                    *RomImage;
 };
 
index 873e209..5587578 100644 (file)
@@ -4,14 +4,8 @@
   Abstraction of a basic serial device. Targeted at 16550 UART, but
   could be much more generic.
 
-  Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.<BR>
-  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.             
+  Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
+  SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
 
@@ -25,7 +19,7 @@
 
 ///
 /// Protocol GUID defined in EFI1.1.
-/// 
+///
 #define SERIAL_IO_PROTOCOL  EFI_SERIAL_IO_PROTOCOL_GUID
 
 typedef struct _EFI_SERIAL_IO_PROTOCOL EFI_SERIAL_IO_PROTOCOL;
@@ -33,7 +27,7 @@ typedef struct _EFI_SERIAL_IO_PROTOCOL EFI_SERIAL_IO_PROTOCOL;
 
 ///
 /// Backward-compatible with EFI1.1.
-/// 
+///
 typedef EFI_SERIAL_IO_PROTOCOL  SERIAL_IO_INTERFACE;
 
 ///
@@ -92,7 +86,7 @@ typedef enum {
   Reset the serial device.
 
   @param  This              Protocol instance pointer.
-                            
+
   @retval EFI_SUCCESS       The device was reset.
   @retval EFI_DEVICE_ERROR  The serial device could not be reset.
 
@@ -104,7 +98,7 @@ EFI_STATUS
   );
 
 /**
-  Sets the baud rate, receive FIFO depth, transmit/receice time out, parity, 
+  Sets the baud rate, receive FIFO depth, transmit/receice time out, parity,
   data bits, and stop bits on a serial device.
 
   @param  This             Protocol instance pointer.
@@ -165,7 +159,7 @@ EFI_STATUS
 
   @param  This              Protocol instance pointer.
   @param  Control           A pointer to return the current Control signals from the serial device.
-                            
+
   @retval EFI_SUCCESS       The control bits were read from the serial device.
   @retval EFI_DEVICE_ERROR  The serial device is not functioning correctly.
 
@@ -221,33 +215,33 @@ EFI_STATUS
 
 /**
   @par Data Structure Description:
-  The data values in SERIAL_IO_MODE are read-only and are updated by the code 
+  The data values in SERIAL_IO_MODE are read-only and are updated by the code
   that produces the SERIAL_IO_PROTOCOL member functions.
 
   @param ControlMask
   A mask for the Control bits that the device supports. The device
   must always support the Input Buffer Empty control bit.
-  
+
   @param TimeOut
   If applicable, the number of microseconds to wait before timing out
   a Read or Write operation.
-  
+
   @param BaudRate
   If applicable, the current baud rate setting of the device; otherwise,
   baud rate has the value of zero to indicate that device runs at the
   device's designed speed.
-  
+
   @param ReceiveFifoDepth
   The number of characters the device will buffer on input
-  
+
   @param DataBits
   The number of characters the device will buffer on input
-  
+
   @param Parity
-  If applicable, this is the EFI_PARITY_TYPE that is computed or 
+  If applicable, this is the EFI_PARITY_TYPE that is computed or
   checked as each character is transmitted or reveived. If the device
   does not support parity the value is the default parity value.
-  
+
   @param StopBits
   If applicable, the EFI_STOP_BITS_TYPE number of stop bits per
   character. If the device does not support stop bits the value is
@@ -272,14 +266,14 @@ typedef struct {
 #define SERIAL_IO_INTERFACE_REVISION  EFI_SERIAL_IO_PROTOCOL_REVISION
 
 ///
-/// The Serial I/O protocol is used to communicate with UART-style serial devices. 
-/// These can be standard UART serial ports in PC-AT systems, serial ports attached 
+/// The Serial I/O protocol is used to communicate with UART-style serial devices.
+/// These can be standard UART serial ports in PC-AT systems, serial ports attached
 /// to a USB interface, or potentially any character-based I/O device.
 ///
 struct _EFI_SERIAL_IO_PROTOCOL {
   ///
-  /// The revision to which the EFI_SERIAL_IO_PROTOCOL adheres. All future revisions 
-  /// must be backwards compatible. If a future version is not backwards compatible, 
+  /// The revision to which the EFI_SERIAL_IO_PROTOCOL adheres. All future revisions
+  /// must be backwards compatible. If a future version is not backwards compatible,
   /// it is not the same GUID.
   ///
   UINT32                      Revision;
index 0dda83a..a367fa2 100644 (file)
@@ -1,5 +1,5 @@
 /** @file
-  The EFI_SIMPLE_NETWORK_PROTOCOL provides services to initialize a network interface, 
+  The EFI_SIMPLE_NETWORK_PROTOCOL provides services to initialize a network interface,
   transmit packets, receive packets, and close a network interface.
 
   Basic network device abstraction.
@@ -9,17 +9,11 @@
   MCast - MultiCast
   ...
 
-Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>
-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.   
+Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
+SPDX-License-Identifier: BSD-2-Clause-Patent
 
-  @par Revision Reference:          
-  This Protocol is introduced in EFI Specification 1.10.          
+  @par Revision Reference:
+  This Protocol is introduced in EFI Specification 1.10.
 
 **/
 
@@ -36,7 +30,7 @@ typedef struct _EFI_SIMPLE_NETWORK_PROTOCOL  EFI_SIMPLE_NETWORK_PROTOCOL;
 
 ///
 /// Protocol defined in EFI1.1.
-/// 
+///
 typedef EFI_SIMPLE_NETWORK_PROTOCOL   EFI_SIMPLE_NETWORK;
 
 ///
@@ -288,8 +282,8 @@ EFI_STATUS
   );
 
 /**
-  Resets a network adapter and allocates the transmit and receive buffers 
-  required by the network interface; optionally, also requests allocation 
+  Resets a network adapter and allocates the transmit and receive buffers
+  required by the network interface; optionally, also requests allocation
   of additional transmit and receive buffers.
 
   @param  This              The protocol instance pointer.
@@ -322,8 +316,8 @@ EFI_STATUS
   );
 
 /**
-  Resets a network adapter and re-initializes it with the parameters that were 
-  provided in the previous call to Initialize().  
+  Resets a network adapter and re-initializes it with the parameters that were
+  provided in the previous call to Initialize().
 
   @param  This                 The protocol instance pointer.
   @param  ExtendedVerification Indicates that the driver may perform a more
@@ -345,7 +339,7 @@ EFI_STATUS
   );
 
 /**
-  Resets a network adapter and leaves it in a state that is safe for 
+  Resets a network adapter and leaves it in a state that is safe for
   another driver to initialize.
 
   @param  This Protocol instance pointer.
@@ -482,7 +476,7 @@ EFI_STATUS
   );
 
 /**
-  Performs read and write operations on the NVRAM device attached to a 
+  Performs read and write operations on the NVRAM device attached to a
   network interface.
 
   @param  This       The protocol instance pointer.
@@ -512,7 +506,7 @@ EFI_STATUS
   );
 
 /**
-  Reads the current interrupt status and recycled transmit buffer status from 
+  Reads the current interrupt status and recycled transmit buffer status from
   a network interface.
 
   @param  This            The protocol instance pointer.
@@ -570,7 +564,7 @@ EFI_STATUS
 
   @retval EFI_SUCCESS           The packet was placed on the transmit queue.
   @retval EFI_NOT_STARTED       The network interface has not been started.
-  @retval EFI_NOT_READY         The network interface is too busy to accept this transmit request.                      
+  @retval EFI_NOT_READY         The network interface is too busy to accept this transmit request.
   @retval EFI_BUFFER_TOO_SMALL  The BufferSize parameter is too small.
   @retval EFI_INVALID_PARAMETER One or more of the parameters has an unsupported value.
   @retval EFI_DEVICE_ERROR      The command could not be sent to the network interface.
@@ -637,19 +631,19 @@ EFI_STATUS
 
 //
 // Revision defined in EFI1.1
-// 
+//
 #define EFI_SIMPLE_NETWORK_INTERFACE_REVISION   EFI_SIMPLE_NETWORK_PROTOCOL_REVISION
 
 ///
-/// The EFI_SIMPLE_NETWORK_PROTOCOL protocol is used to initialize access 
-/// to a network adapter. Once the network adapter initializes, 
-/// the EFI_SIMPLE_NETWORK_PROTOCOL protocol provides services that 
+/// The EFI_SIMPLE_NETWORK_PROTOCOL protocol is used to initialize access
+/// to a network adapter. Once the network adapter initializes,
+/// the EFI_SIMPLE_NETWORK_PROTOCOL protocol provides services that
 /// allow packets to be transmitted and received.
 ///
 struct _EFI_SIMPLE_NETWORK_PROTOCOL {
   ///
-  /// Revision of the EFI_SIMPLE_NETWORK_PROTOCOL. All future revisions must 
-  /// be backwards compatible. If a future version is not backwards compatible 
+  /// Revision of the EFI_SIMPLE_NETWORK_PROTOCOL. All future revisions must
+  /// be backwards compatible. If a future version is not backwards compatible
   /// it is not the same GUID.
   ///
   UINT64                              Revision;
index d8df553..e6884d8 100644 (file)
@@ -5,13 +5,7 @@
   terminal.
 
   Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.<BR>
-  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.
+  SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
 
index 38a6518..f6a80e7 100644 (file)
@@ -6,13 +6,7 @@
   also allows one to register a notification for a particular keystroke.
 
   Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
-  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.
+  SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
 
index 4d2612c..18438d3 100644 (file)
@@ -6,14 +6,8 @@
   a single hardware device or a virtual device that is an aggregation
   of multiple physical devices.
 
-Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.<BR>
-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.             
+Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
+SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
 
@@ -27,14 +21,14 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 
 ///
 /// Protocol GUID defined in EFI1.1.
-/// 
+///
 #define SIMPLE_TEXT_OUTPUT_PROTOCOL   EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL_GUID
 
 typedef struct _EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL;
 
 ///
 /// Backward-compatible with EFI1.1.
-/// 
+///
 typedef EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL   SIMPLE_TEXT_OUTPUT_INTERFACE;
 
 //
@@ -125,8 +119,8 @@ typedef EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL   SIMPLE_TEXT_OUTPUT_INTERFACE;
 #define EFI_WHITE                 (EFI_BLUE | EFI_GREEN | EFI_RED | EFI_BRIGHT)
 
 //
-// Macro to accept color values in their raw form to create 
-// a value that represents both a foreground and background 
+// Macro to accept color values in their raw form to create
+// a value that represents both a foreground and background
 // color in a single byte.
 // For Foreground, and EFI_* value is valid from EFI_BLACK(0x00) to
 // EFI_WHITE (0x0F).
@@ -148,7 +142,7 @@ typedef EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL   SIMPLE_TEXT_OUTPUT_INTERFACE;
 
 //
 // We currently define attributes from 0 - 7F for color manipulations
-// To internally handle the local display characteristics for a particular character, 
+// To internally handle the local display characteristics for a particular character,
 // Bit 7 signifies the local glyph representation for a character.  If turned on, glyphs will be
 // pulled from the wide glyph database and will display locally as a wide character (16 X 19 versus 8 X 19)
 // If bit 7 is off, the narrow glyph database will be used.  This does NOT affect information that is sent to
@@ -201,7 +195,7 @@ EFI_STATUS
   );
 
 /**
-  Verifies that all characters in a string can be output to the 
+  Verifies that all characters in a string can be output to the
   target device.
 
   @param  This   The protocol instance pointer.
@@ -231,7 +225,7 @@ EFI_STATUS
                      requested ModeNumber.
   @param  Rows       Returns the geometry of the text output device for the
                      requested ModeNumber.
-                                          
+
   @retval EFI_SUCCESS      The requested mode information was returned.
   @retval EFI_DEVICE_ERROR The device had an error and could not complete the request.
   @retval EFI_UNSUPPORTED  The mode number was not valid.
@@ -286,11 +280,11 @@ EFI_STATUS
   );
 
 /**
-  Clears the output device(s) display to the currently selected background 
+  Clears the output device(s) display to the currently selected background
   color.
 
   @param  This              The protocol instance pointer.
-                           
+
   @retval  EFI_SUCCESS      The operation completed successfully.
   @retval  EFI_DEVICE_ERROR The device had an error and could not complete the request.
   @retval  EFI_UNSUPPORTED  The output device is not in a valid text mode.
@@ -385,9 +379,9 @@ typedef struct {
 } EFI_SIMPLE_TEXT_OUTPUT_MODE;
 
 ///
-/// The SIMPLE_TEXT_OUTPUT protocol is used to control text-based output devices. 
-/// It is the minimum required protocol for any handle supplied as the ConsoleOut 
-/// or StandardError device. In addition, the minimum supported text mode of such 
+/// The SIMPLE_TEXT_OUTPUT protocol is used to control text-based output devices.
+/// It is the minimum required protocol for any handle supplied as the ConsoleOut
+/// or StandardError device. In addition, the minimum supported text mode of such
 /// devices is at least 80 x 25 characters.
 ///
 struct _EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL {
index f501a6c..1b2bd17 100644 (file)
@@ -3,14 +3,8 @@
 
   Abstraction of a very simple graphics device.
 
-  Copyright (c) 2006 - 2008, Intel Corporation. All rights reserved.<BR>
-  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.
+  Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
+  SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
 
@@ -92,26 +86,26 @@ typedef enum {
                             ///< directly to every pixel of the video display rectangle
                             ///< (DestinationX, DestinationY) (DestinationX + Width, DestinationY + Height).
                             ///< Only one pixel will be used from the BltBuffer. Delta is NOT used.
-                            
+
   EfiUgaVideoToBltBuffer,   ///< Read data from the video display rectangle
                             ///< (SourceX, SourceY) (SourceX + Width, SourceY + Height) and place it in
                             ///< the BltBuffer rectangle (DestinationX, DestinationY )
                             ///< (DestinationX + Width, DestinationY + Height). If DestinationX or
                             ///< DestinationY is not zero then Delta must be set to the length in bytes
                             ///< of a row in the BltBuffer.
-                            
+
   EfiUgaBltBufferToVideo,   ///< Write data from the  BltBuffer rectangle
                             ///< (SourceX, SourceY) (SourceX + Width, SourceY + Height) directly to the
                             ///< video display rectangle (DestinationX, DestinationY)
                             ///< (DestinationX + Width, DestinationY + Height). If SourceX or SourceY is
                             ///< not zero then Delta must be set to the length in bytes of a row in the
                             ///< BltBuffer.
-  
+
   EfiUgaVideoToVideo,       ///< Copy from the video display rectangle (SourceX, SourceY)
                             ///< (SourceX + Width, SourceY + Height) .to the video display rectangle
                             ///< (DestinationX, DestinationY) (DestinationX + Width, DestinationY + Height).
                             ///< The BltBuffer and Delta  are not used in this mode.
-                            
+
   EfiUgaBltMax              ///< Maxmimum value for enumration value of Blt operation. If a Blt operation
                             ///< larger or equal to this enumration value, it is invalid.
 } EFI_UGA_BLT_OPERATION;
@@ -152,8 +146,8 @@ EFI_STATUS
   );
 
 ///
-/// This protocol provides a basic abstraction to set video modes and 
-/// copy pixels to and from the graphics controller's frame buffer. 
+/// This protocol provides a basic abstraction to set video modes and
+/// copy pixels to and from the graphics controller's frame buffer.
 ///
 struct _EFI_UGA_DRAW_PROTOCOL {
   EFI_UGA_DRAW_PROTOCOL_GET_MODE  GetMode;
index 4b21013..dd0ece6 100644 (file)
@@ -2,18 +2,12 @@
 
   Root include file for Mde Package UEFI, UEFI_APPLICATION type modules.
 
-  This is the include file for any module of type UEFI and UEFI_APPLICATION. Uefi modules only use 
-  types defined via this include file and can be ported easily to any 
-  environment. 
-
-Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>
-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.
+  This is the include file for any module of type UEFI and UEFI_APPLICATION. Uefi modules only use
+  types defined via this include file and can be ported easily to any
+  environment.
+
+Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
+SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
 
index 10dc6c4..1993c9d 100644 (file)
@@ -1,16 +1,10 @@
 /** @file
   Defines data types and constants introduced in UEFI.
 
-Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
+Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
 Portions copyright (c) 2011 - 2016, ARM Ltd. All rights reserved.<BR>
 
-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.
+SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
 
@@ -114,44 +108,44 @@ typedef union {
 
 ///
 /// Enumeration of EFI_STATUS.
-///@{ 
-#define EFI_SUCCESS               RETURN_SUCCESS              
-#define EFI_LOAD_ERROR            RETURN_LOAD_ERROR           
-#define EFI_INVALID_PARAMETER     RETURN_INVALID_PARAMETER    
-#define EFI_UNSUPPORTED           RETURN_UNSUPPORTED          
-#define EFI_BAD_BUFFER_SIZE       RETURN_BAD_BUFFER_SIZE      
-#define EFI_BUFFER_TOO_SMALL      RETURN_BUFFER_TOO_SMALL     
-#define EFI_NOT_READY             RETURN_NOT_READY            
-#define EFI_DEVICE_ERROR          RETURN_DEVICE_ERROR         
-#define EFI_WRITE_PROTECTED       RETURN_WRITE_PROTECTED      
-#define EFI_OUT_OF_RESOURCES      RETURN_OUT_OF_RESOURCES     
-#define EFI_VOLUME_CORRUPTED      RETURN_VOLUME_CORRUPTED     
-#define EFI_VOLUME_FULL           RETURN_VOLUME_FULL          
-#define EFI_NO_MEDIA              RETURN_NO_MEDIA             
-#define EFI_MEDIA_CHANGED         RETURN_MEDIA_CHANGED        
-#define EFI_NOT_FOUND             RETURN_NOT_FOUND            
-#define EFI_ACCESS_DENIED         RETURN_ACCESS_DENIED        
-#define EFI_NO_RESPONSE           RETURN_NO_RESPONSE          
-#define EFI_NO_MAPPING            RETURN_NO_MAPPING           
-#define EFI_TIMEOUT               RETURN_TIMEOUT              
-#define EFI_NOT_STARTED           RETURN_NOT_STARTED          
-#define EFI_ALREADY_STARTED       RETURN_ALREADY_STARTED      
-#define EFI_ABORTED               RETURN_ABORTED              
-#define EFI_ICMP_ERROR            RETURN_ICMP_ERROR           
-#define EFI_TFTP_ERROR            RETURN_TFTP_ERROR           
-#define EFI_PROTOCOL_ERROR        RETURN_PROTOCOL_ERROR       
-#define EFI_INCOMPATIBLE_VERSION  RETURN_INCOMPATIBLE_VERSION 
-#define EFI_SECURITY_VIOLATION    RETURN_SECURITY_VIOLATION   
-#define EFI_CRC_ERROR             RETURN_CRC_ERROR   
+///@{
+#define EFI_SUCCESS               RETURN_SUCCESS
+#define EFI_LOAD_ERROR            RETURN_LOAD_ERROR
+#define EFI_INVALID_PARAMETER     RETURN_INVALID_PARAMETER
+#define EFI_UNSUPPORTED           RETURN_UNSUPPORTED
+#define EFI_BAD_BUFFER_SIZE       RETURN_BAD_BUFFER_SIZE
+#define EFI_BUFFER_TOO_SMALL      RETURN_BUFFER_TOO_SMALL
+#define EFI_NOT_READY             RETURN_NOT_READY
+#define EFI_DEVICE_ERROR          RETURN_DEVICE_ERROR
+#define EFI_WRITE_PROTECTED       RETURN_WRITE_PROTECTED
+#define EFI_OUT_OF_RESOURCES      RETURN_OUT_OF_RESOURCES
+#define EFI_VOLUME_CORRUPTED      RETURN_VOLUME_CORRUPTED
+#define EFI_VOLUME_FULL           RETURN_VOLUME_FULL
+#define EFI_NO_MEDIA              RETURN_NO_MEDIA
+#define EFI_MEDIA_CHANGED         RETURN_MEDIA_CHANGED
+#define EFI_NOT_FOUND             RETURN_NOT_FOUND
+#define EFI_ACCESS_DENIED         RETURN_ACCESS_DENIED
+#define EFI_NO_RESPONSE           RETURN_NO_RESPONSE
+#define EFI_NO_MAPPING            RETURN_NO_MAPPING
+#define EFI_TIMEOUT               RETURN_TIMEOUT
+#define EFI_NOT_STARTED           RETURN_NOT_STARTED
+#define EFI_ALREADY_STARTED       RETURN_ALREADY_STARTED
+#define EFI_ABORTED               RETURN_ABORTED
+#define EFI_ICMP_ERROR            RETURN_ICMP_ERROR
+#define EFI_TFTP_ERROR            RETURN_TFTP_ERROR
+#define EFI_PROTOCOL_ERROR        RETURN_PROTOCOL_ERROR
+#define EFI_INCOMPATIBLE_VERSION  RETURN_INCOMPATIBLE_VERSION
+#define EFI_SECURITY_VIOLATION    RETURN_SECURITY_VIOLATION
+#define EFI_CRC_ERROR             RETURN_CRC_ERROR
 #define EFI_END_OF_MEDIA          RETURN_END_OF_MEDIA
 #define EFI_END_OF_FILE           RETURN_END_OF_FILE
 #define EFI_INVALID_LANGUAGE      RETURN_INVALID_LANGUAGE
 #define EFI_COMPROMISED_DATA      RETURN_COMPROMISED_DATA
 #define EFI_HTTP_ERROR            RETURN_HTTP_ERROR
 
-#define EFI_WARN_UNKNOWN_GLYPH    RETURN_WARN_UNKNOWN_GLYPH   
-#define EFI_WARN_DELETE_FAILURE   RETURN_WARN_DELETE_FAILURE  
-#define EFI_WARN_WRITE_FAILURE    RETURN_WARN_WRITE_FAILURE   
+#define EFI_WARN_UNKNOWN_GLYPH    RETURN_WARN_UNKNOWN_GLYPH
+#define EFI_WARN_DELETE_FAILURE   RETURN_WARN_DELETE_FAILURE
+#define EFI_WARN_WRITE_FAILURE    RETURN_WARN_WRITE_FAILURE
 #define EFI_WARN_BUFFER_TOO_SMALL RETURN_WARN_BUFFER_TOO_SMALL
 #define EFI_WARN_STALE_DATA       RETURN_WARN_STALE_DATA
 #define EFI_WARN_FILE_SYSTEM      RETURN_WARN_FILE_SYSTEM
@@ -159,7 +153,7 @@ typedef union {
 
 ///
 /// Define macro to encode the status code.
-/// 
+///
 #define EFIERR(_a)                ENCODE_ERROR(_a)
 
 #define EFI_ERROR(A)              RETURN_ERROR(A)
@@ -168,7 +162,7 @@ typedef union {
 /// ICMP error definitions
 ///@{
 #define EFI_NETWORK_UNREACHABLE   EFIERR(100)
-#define EFI_HOST_UNREACHABLE      EFIERR(101) 
+#define EFI_HOST_UNREACHABLE      EFIERR(101)
 #define EFI_PROTOCOL_UNREACHABLE  EFIERR(102)
 #define EFI_PORT_UNREACHABLE      EFIERR(103)
 ///@}
@@ -193,8 +187,8 @@ typedef union {
 /**
   Macro that converts a size, in bytes, to a number of EFI_PAGESs.
 
-  @param  Size      A size in bytes.  This parameter is assumed to be type UINTN.  
-                    Passing in a parameter that is larger than UINTN may produce 
+  @param  Size      A size in bytes.  This parameter is assumed to be type UINTN.
+                    Passing in a parameter that is larger than UINTN may produce
                     unexpected results.
 
   @return  The number of EFI_PAGESs associated with the number of bytes specified
@@ -206,13 +200,13 @@ typedef union {
 /**
   Macro that converts a number of EFI_PAGEs to a size in bytes.
 
-  @param  Pages     The number of EFI_PAGES.  This parameter is assumed to be 
-                    type UINTN.  Passing in a parameter that is larger than 
+  @param  Pages     The number of EFI_PAGES.  This parameter is assumed to be
+                    type UINTN.  Passing in a parameter that is larger than
                     UINTN may produce unexpected results.
 
-  @return  The number of bytes associated with the number of EFI_PAGEs specified 
+  @return  The number of bytes associated with the number of EFI_PAGEs specified
            by Pages.
-  
+
 **/
 #define EFI_PAGES_TO_SIZE(Pages)  ((Pages) << EFI_PAGE_SHIFT)
 
@@ -250,23 +244,16 @@ typedef union {
 #if   defined (MDE_CPU_IA32)
 
 #define EFI_IMAGE_MACHINE_TYPE_SUPPORTED(Machine) \
-  (((Machine) == EFI_IMAGE_MACHINE_IA32) || ((Machine) == EFI_IMAGE_MACHINE_EBC))
-
-#define EFI_IMAGE_MACHINE_CROSS_TYPE_SUPPORTED(Machine) ((Machine) == EFI_IMAGE_MACHINE_X64) 
-
-#elif defined (MDE_CPU_IPF)
-
-#define EFI_IMAGE_MACHINE_TYPE_SUPPORTED(Machine) \
-  (((Machine) == EFI_IMAGE_MACHINE_IA64) || ((Machine) == EFI_IMAGE_MACHINE_EBC))
+  ((Machine) == EFI_IMAGE_MACHINE_IA32)
 
-#define EFI_IMAGE_MACHINE_CROSS_TYPE_SUPPORTED(Machine) (FALSE) 
+#define EFI_IMAGE_MACHINE_CROSS_TYPE_SUPPORTED(Machine) ((Machine) == EFI_IMAGE_MACHINE_X64)
 
 #elif defined (MDE_CPU_X64)
 
 #define EFI_IMAGE_MACHINE_TYPE_SUPPORTED(Machine) \
-  (((Machine) == EFI_IMAGE_MACHINE_X64) || ((Machine) == EFI_IMAGE_MACHINE_EBC))
+  ((Machine) == EFI_IMAGE_MACHINE_X64)
 
-#define EFI_IMAGE_MACHINE_CROSS_TYPE_SUPPORTED(Machine) ((Machine) == EFI_IMAGE_MACHINE_IA32) 
+#define EFI_IMAGE_MACHINE_CROSS_TYPE_SUPPORTED(Machine) ((Machine) == EFI_IMAGE_MACHINE_IA32)
 
 #elif defined (MDE_CPU_ARM)
 
@@ -277,7 +264,7 @@ typedef union {
 #elif defined (MDE_CPU_AARCH64)
 
 #define EFI_IMAGE_MACHINE_TYPE_SUPPORTED(Machine) \
-  (((Machine) == EFI_IMAGE_MACHINE_AARCH64) || ((Machine) == EFI_IMAGE_MACHINE_EBC))
+  ((Machine) == EFI_IMAGE_MACHINE_AARCH64)
 
 #define EFI_IMAGE_MACHINE_CROSS_TYPE_SUPPORTED(Machine) (FALSE)
 
@@ -285,11 +272,11 @@ typedef union {
 
 ///
 /// This is just to make sure you can cross compile with the EBC compiler.
-/// It does not make sense to have a PE loader coded in EBC. 
+/// It does not make sense to have a PE loader coded in EBC.
 ///
 #define EFI_IMAGE_MACHINE_TYPE_SUPPORTED(Machine) ((Machine) == EFI_IMAGE_MACHINE_EBC)
 
-#define EFI_IMAGE_MACHINE_CROSS_TYPE_SUPPORTED(Machine) (FALSE) 
+#define EFI_IMAGE_MACHINE_CROSS_TYPE_SUPPORTED(Machine) (FALSE)
 
 #else
 #error Unknown Processor Type
index aa3c9be..af05561 100644 (file)
@@ -1,14 +1,8 @@
 /** @file
   EFI Guid Partition Table Format Definition.
 
-Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.<BR>
-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.
+Copyright (c) 2006 - 2019, Intel Corporation. All rights reserved.<BR>
+SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
 
@@ -22,8 +16,12 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #define PRIMARY_PART_HEADER_LBA 1
 ///
 /// EFI Partition Table Signature: "EFI PART".
-/// 
+///
 #define EFI_PTAB_HEADER_ID      SIGNATURE_64 ('E','F','I',' ','P','A','R','T')
+///
+/// Minimum bytes reserve for EFI entry array buffer.
+///
+#define EFI_GPT_PART_ENTRY_MIN_SIZE 16384
 
 #pragma pack(1)
 
@@ -119,7 +117,7 @@ typedef struct {
   ///             this partition. By not producing an EFI_BLOCK_IO_PROTOCOL partition, file system
   ///             mappings will not be created for this partition in UEFI.
   /// Bit 2:      This bit is set aside to let systems with traditional PC-AT BIOS firmware implementations
-  ///             inform certain limited, special-purpose software running on these systems that a GPT 
+  ///             inform certain limited, special-purpose software running on these systems that a GPT
   ///             partition may be bootable. The UEFI boot manager must ignore this bit when selecting
   ///             a UEFI-compliant application, e.g., an OS loader.
   /// Bits 3-47:  Undefined and must be zero. Reserved for expansion by future versions of the UEFI
index 389c12c..96d086a 100644 (file)
@@ -3,15 +3,9 @@
   IFR is primarily consumed by the EFI presentation engine, and produced by EFI
   internal application and drivers as well as all add-in card option-ROM drivers
 
-Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>
+Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
 (C) Copyright 2016 Hewlett Packard Enterprise Development LP<BR>
-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.             
+SPDX-License-Identifier: BSD-2-Clause-Patent
 
   @par Revision Reference:
   These definitions are from UEFI 2.1 and 2.2.
@@ -67,7 +61,7 @@ typedef struct {
 
 //
 // Value of HII package type
-// 
+//
 #define EFI_HII_PACKAGE_TYPE_ALL             0x00
 #define EFI_HII_PACKAGE_TYPE_GUID            0x01
 #define EFI_HII_PACKAGE_FORMS                0x02
@@ -100,7 +94,7 @@ typedef struct {
 ///
 typedef struct {
   ///
-  /// The Unicode representation of the glyph. The term weight is the 
+  /// The Unicode representation of the glyph. The term weight is the
   /// technical term for a character code.
   ///
   CHAR16                 UnicodeWeight;
@@ -109,7 +103,7 @@ typedef struct {
   ///
   UINT8                  Attributes;
   ///
-  /// The column major glyph representation of the character. Bits 
+  /// The column major glyph representation of the character. Bits
   /// with values of one indicate that the corresponding pixel is to be
   /// on when normally displayed; those with zero are off.
   ///
@@ -117,12 +111,12 @@ typedef struct {
 } EFI_NARROW_GLYPH;
 
 ///
-/// The EFI_WIDE_GLYPH has a preferred dimension (w x h) of 16 x 19 pixels, which is large enough 
+/// The EFI_WIDE_GLYPH has a preferred dimension (w x h) of 16 x 19 pixels, which is large enough
 /// to accommodate logographic characters.
 ///
 typedef struct {
   ///
-  /// The Unicode representation of the glyph. The term weight is the 
+  /// The Unicode representation of the glyph. The term weight is the
   /// technical term for a character code.
   ///
   CHAR16                 UnicodeWeight;
@@ -131,20 +125,20 @@ typedef struct {
   ///
   UINT8                  Attributes;
   ///
-  /// The column major glyph representation of the character. Bits 
-  /// with values of one indicate that the corresponding pixel is to be 
+  /// The column major glyph representation of the character. Bits
+  /// with values of one indicate that the corresponding pixel is to be
   /// on when normally displayed; those with zero are off.
   ///
   UINT8                  GlyphCol1[EFI_GLYPH_HEIGHT];
   ///
-  /// The column major glyph representation of the character. Bits 
-  /// with values of one indicate that the corresponding pixel is to be 
+  /// The column major glyph representation of the character. Bits
+  /// with values of one indicate that the corresponding pixel is to be
   /// on when normally displayed; those with zero are off.
   ///
   UINT8                  GlyphCol2[EFI_GLYPH_HEIGHT];
   ///
-  /// Ensures that sizeof (EFI_WIDE_GLYPH) is twice the 
-  /// sizeof (EFI_NARROW_GLYPH). The contents of Pad must 
+  /// Ensures that sizeof (EFI_WIDE_GLYPH) is twice the
+  /// sizeof (EFI_NARROW_GLYPH). The contents of Pad must
   /// be zero.
   ///
   UINT8                  Pad[3];
@@ -268,7 +262,7 @@ typedef struct _EFI_HII_GIBT_GLYPH_BLOCK {
 typedef struct _EFI_HII_GIBT_GLYPHS_BLOCK {
   EFI_HII_GLYPH_BLOCK    Header;
   EFI_HII_GLYPH_INFO     Cell;
-  UINT16                 Count;  
+  UINT16                 Count;
   UINT8                  BitmapData[1];
 } EFI_HII_GIBT_GLYPHS_BLOCK;
 
@@ -845,7 +839,7 @@ typedef struct _EFI_IFR_DEFAULTSTORE {
 } EFI_IFR_DEFAULTSTORE;
 
 //
-// Default Identifier of default store 
+// Default Identifier of default store
 //
 #define EFI_HII_DEFAULT_CLASS_STANDARD       0x0000
 #define EFI_HII_DEFAULT_CLASS_MANUFACTURING  0x0001
@@ -1498,12 +1492,12 @@ typedef struct _EFI_IFR_SECURITY {
 
 typedef struct _EFI_IFR_FORM_MAP_METHOD {
   ///
-  /// The string identifier which provides the human-readable name of 
+  /// The string identifier which provides the human-readable name of
   /// the configuration method for this standards map form.
   ///
   EFI_STRING_ID            MethodTitle;
   ///
-  /// Identifier which uniquely specifies the configuration methods 
+  /// Identifier which uniquely specifies the configuration methods
   /// associated with this standards map form.
   ///
   EFI_GUID                 MethodIdentifier;
@@ -1511,8 +1505,8 @@ typedef struct _EFI_IFR_FORM_MAP_METHOD {
 
 typedef struct _EFI_IFR_FORM_MAP {
   ///
-  /// The sequence that defines the type of opcode as well as the length 
-  /// of the opcode being defined. Header.OpCode = EFI_IFR_FORM_MAP_OP. 
+  /// The sequence that defines the type of opcode as well as the length
+  /// of the opcode being defined. Header.OpCode = EFI_IFR_FORM_MAP_OP.
   ///
   EFI_IFR_OP_HEADER        Header;
   ///
@@ -1527,13 +1521,13 @@ typedef struct _EFI_IFR_FORM_MAP {
 
 typedef struct _EFI_IFR_SET {
   ///
-  /// The sequence that defines the type of opcode as well as the length 
-  /// of the opcode being defined. Header.OpCode = EFI_IFR_SET_OP. 
+  /// The sequence that defines the type of opcode as well as the length
+  /// of the opcode being defined. Header.OpCode = EFI_IFR_SET_OP.
   ///
   EFI_IFR_OP_HEADER  Header;
   ///
-  /// Specifies the identifier of a previously declared variable store to 
-  /// use when storing the question's value. 
+  /// Specifies the identifier of a previously declared variable store to
+  /// use when storing the question's value.
   ///
   EFI_VARSTORE_ID    VarStoreId;
   union {
@@ -1547,20 +1541,20 @@ typedef struct _EFI_IFR_SET {
     UINT16           VarOffset;
   }                  VarStoreInfo;
   ///
-  /// Specifies the type used for storage. 
+  /// Specifies the type used for storage.
   ///
   UINT8              VarStoreType;
 } EFI_IFR_SET;
 
 typedef struct _EFI_IFR_GET {
   ///
-  /// The sequence that defines the type of opcode as well as the length 
-  /// of the opcode being defined. Header.OpCode = EFI_IFR_GET_OP. 
+  /// The sequence that defines the type of opcode as well as the length
+  /// of the opcode being defined. Header.OpCode = EFI_IFR_GET_OP.
   ///
   EFI_IFR_OP_HEADER  Header;
   ///
-  /// Specifies the identifier of a previously declared variable store to 
-  /// use when retrieving the value. 
+  /// Specifies the identifier of a previously declared variable store to
+  /// use when retrieving the value.
   ///
   EFI_VARSTORE_ID    VarStoreId;
   union {
@@ -1574,7 +1568,7 @@ typedef struct _EFI_IFR_GET {
     UINT16           VarOffset;
   }                  VarStoreInfo;
   ///
-  /// Specifies the type used for storage. 
+  /// Specifies the type used for storage.
   ///
   UINT8              VarStoreType;
 } EFI_IFR_GET;
@@ -1598,9 +1592,9 @@ typedef struct _EFI_IFR_MAP {
 ///
 /// Each enumeration values maps a physical key on a keyboard.
 ///
-typedef enum {    
+typedef enum {
   EfiKeyLCtrl,
-  EfiKeyA0, 
+  EfiKeyA0,
   EfiKeyLAlt,
   EfiKeySpaceBar,
   EfiKeyA2,
@@ -1728,8 +1722,8 @@ typedef struct {
   ///
   CHAR16                  ShiftedAltGrUnicode;
   ///
-  /// Modifier keys are defined to allow for special functionality that is not necessarily 
-  /// accomplished by a printable character. Many of these modifier keys are flags to toggle 
+  /// Modifier keys are defined to allow for special functionality that is not necessarily
+  /// accomplished by a printable character. Many of these modifier keys are flags to toggle
   /// certain state bits on and off inside of a keyboard driver.
   ///
   UINT16                  Modifier;
@@ -1737,7 +1731,7 @@ typedef struct {
 } EFI_KEY_DESCRIPTOR;
 
 ///
-/// A key which is affected by all the standard shift modifiers.  
+/// A key which is affected by all the standard shift modifiers.
 /// Most keys would be expected to have this bit active.
 ///
 #define EFI_AFFECTED_BY_STANDARD_SHIFT       0x0001
@@ -1830,7 +1824,7 @@ typedef struct {
 ///
 typedef struct _EFI_IFR_ANIMATION {
   ///
-  /// Standard opcode header, where Header.OpCode is 
+  /// Standard opcode header, where Header.OpCode is
   /// EFI_IFR_ANIMATION_OP.
   ///
   EFI_IFR_OP_HEADER        Header;
@@ -1849,7 +1843,7 @@ typedef struct _EFI_HII_ANIMATION_PACKAGE_HDR {
   ///
   EFI_HII_PACKAGE_HEADER  Header;
   ///
-  /// Offset, relative to this header, of the animation information. If 
+  /// Offset, relative to this header, of the animation information. If
   /// this is zero, then there are no animation sequences in the package.
   ///
   UINT32                  AnimationInfoOffset;
@@ -1933,23 +1927,23 @@ typedef struct _EFI_HII_AIBT_EXT4_BLOCK {
 
 typedef struct _EFI_HII_ANIMATION_CELL {
   ///
-  /// The X offset from the upper left hand corner of the logical 
+  /// The X offset from the upper left hand corner of the logical
   /// window to position the indexed image.
   ///
   UINT16                    OffsetX;
   ///
-  /// The Y offset from the upper left hand corner of the logical 
+  /// The Y offset from the upper left hand corner of the logical
   /// window to position the indexed image.
   ///
   UINT16                    OffsetY;
   ///
-  /// The image to display at the specified offset from the upper left 
+  /// The image to display at the specified offset from the upper left
   /// hand corner of the logical window.
   ///
   EFI_IMAGE_ID              ImageId;
   ///
-  /// The number of milliseconds to delay after displaying the indexed 
-  /// image and before continuing on to the next linked image.  If value 
+  /// The number of milliseconds to delay after displaying the indexed
+  /// image and before continuing on to the next linked image.  If value
   /// is zero, no delay.
   ///
   UINT16                    Delay;
@@ -1961,11 +1955,11 @@ typedef struct _EFI_HII_ANIMATION_CELL {
 ///
 typedef struct _EFI_HII_AIBT_OVERLAY_IMAGES_BLOCK {
   ///
-  /// This is image that is to be reference by the image protocols, if the 
-  /// animation function is not supported or disabled. This image can 
-  /// be one particular image from the animation sequence (if any one 
-  /// of the animation frames has a complete image) or an alternate 
-  /// image that can be displayed alone. If the value is zero, no image 
+  /// This is image that is to be reference by the image protocols, if the
+  /// animation function is not supported or disabled. This image can
+  /// be one particular image from the animation sequence (if any one
+  /// of the animation frames has a complete image) or an alternate
+  /// image that can be displayed alone. If the value is zero, no image
   /// is displayed.
   ///
   EFI_IMAGE_ID            DftImageId;
@@ -1978,7 +1972,7 @@ typedef struct _EFI_HII_AIBT_OVERLAY_IMAGES_BLOCK {
   ///
   UINT16                  Height;
   ///
-  /// The number of EFI_HII_ANIMATION_CELL contained in the 
+  /// The number of EFI_HII_ANIMATION_CELL contained in the
   /// animation sequence.
   ///
   UINT16                  CellCount;
@@ -1990,16 +1984,16 @@ typedef struct _EFI_HII_AIBT_OVERLAY_IMAGES_BLOCK {
 
 ///
 /// An animation block to describe an animation sequence that does not cycle,
-/// and where the logical window is cleared to the specified color before 
+/// and where the logical window is cleared to the specified color before
 /// the next image is displayed.
 ///
 typedef struct _EFI_HII_AIBT_CLEAR_IMAGES_BLOCK {
   ///
-  /// This is image that is to be reference by the image protocols, if the 
-  /// animation function is not supported or disabled. This image can 
-  /// be one particular image from the animation sequence (if any one 
-  /// of the animation frames has a complete image) or an alternate 
-  /// image that can be displayed alone. If the value is zero, no image 
+  /// This is image that is to be reference by the image protocols, if the
+  /// animation function is not supported or disabled. This image can
+  /// be one particular image from the animation sequence (if any one
+  /// of the animation frames has a complete image) or an alternate
+  /// image that can be displayed alone. If the value is zero, no image
   /// is displayed.
   ///
   EFI_IMAGE_ID       DftImageId;
@@ -2012,12 +2006,12 @@ typedef struct _EFI_HII_AIBT_CLEAR_IMAGES_BLOCK {
   ///
   UINT16             Height;
   ///
-  /// The number of EFI_HII_ANIMATION_CELL contained in the 
+  /// The number of EFI_HII_ANIMATION_CELL contained in the
   /// animation sequence.
   ///
   UINT16             CellCount;
   ///
-  /// The color to clear the logical window to before displaying the 
+  /// The color to clear the logical window to before displaying the
   /// indexed image.
   ///
   EFI_HII_RGB_PIXEL  BackgndColor;
@@ -2029,16 +2023,16 @@ typedef struct _EFI_HII_AIBT_CLEAR_IMAGES_BLOCK {
 
 ///
 /// An animation block to describe an animation sequence that does not cycle,
-/// and where the screen is restored to the original state before the next 
+/// and where the screen is restored to the original state before the next
 /// image is displayed.
 ///
 typedef struct _EFI_HII_AIBT_RESTORE_SCRN_BLOCK {
   ///
-  /// This is image that is to be reference by the image protocols, if the 
-  /// animation function is not supported or disabled. This image can 
-  /// be one particular image from the animation sequence (if any one 
-  /// of the animation frames has a complete image) or an alternate 
-  /// image that can be displayed alone. If the value is zero, no image 
+  /// This is image that is to be reference by the image protocols, if the
+  /// animation function is not supported or disabled. This image can
+  /// be one particular image from the animation sequence (if any one
+  /// of the animation frames has a complete image) or an alternate
+  /// image that can be displayed alone. If the value is zero, no image
   /// is displayed.
   ///
   EFI_IMAGE_ID            DftImageId;
@@ -2051,7 +2045,7 @@ typedef struct _EFI_HII_AIBT_RESTORE_SCRN_BLOCK {
   ///
   UINT16                  Height;
   ///
-  /// The number of EFI_HII_ANIMATION_CELL contained in the 
+  /// The number of EFI_HII_ANIMATION_CELL contained in the
   /// animation sequence.
   ///
   UINT16                  CellCount;
@@ -2069,14 +2063,14 @@ typedef EFI_HII_AIBT_OVERLAY_IMAGES_BLOCK  EFI_HII_AIBT_OVERLAY_IMAGES_LOOP_BLOC
 
 ///
 /// An animation block to describe an animation sequence that continuously cycles,
-/// and where the logical window is cleared to the specified color before 
+/// and where the logical window is cleared to the specified color before
 /// the next image is displayed.
 ///
 typedef EFI_HII_AIBT_CLEAR_IMAGES_BLOCK    EFI_HII_AIBT_CLEAR_IMAGES_LOOP_BLOCK;
 
 ///
 /// An animation block to describe an animation sequence that continuously cycles,
-/// and where the screen is restored to the original state before 
+/// and where the screen is restored to the original state before
 /// the next image is displayed.
 ///
 typedef EFI_HII_AIBT_RESTORE_SCRN_BLOCK    EFI_HII_AIBT_RESTORE_SCRN_LOOP_BLOCK;
@@ -2086,7 +2080,7 @@ typedef EFI_HII_AIBT_RESTORE_SCRN_BLOCK    EFI_HII_AIBT_RESTORE_SCRN_LOOP_BLOCK;
 ///
 typedef struct _EFI_HII_AIBT_DUPLICATE_BLOCK {
   ///
-  /// The previously defined animation ID with the exact same 
+  /// The previously defined animation ID with the exact same
   /// animation information.
   ///
   EFI_ANIMATION_ID  AnimationId;
@@ -2121,7 +2115,7 @@ typedef struct _EFI_HII_AIBT_SKIP2_BLOCK {
 /// token usages.
 ///
 ///
-/// STRING_TOKEN is not defined in UEFI specification. But it is placed 
+/// STRING_TOKEN is not defined in UEFI specification. But it is placed
 /// here for the easy access by C files and VFR source files.
 ///
 #define STRING_TOKEN(t) t
index 3419762..dd97e4e 100644 (file)
@@ -1,20 +1,36 @@
 /** @file
   This includes some definitions introduced in UEFI that will be used in both PEI and DXE phases.
 
-Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
-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.
+Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
+SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
 
 #ifndef __UEFI_MULTIPHASE_H__
 #define __UEFI_MULTIPHASE_H__
 
+///
+/// Attributes of variable.
+///
+#define EFI_VARIABLE_NON_VOLATILE                            0x00000001
+#define EFI_VARIABLE_BOOTSERVICE_ACCESS                      0x00000002
+#define EFI_VARIABLE_RUNTIME_ACCESS                          0x00000004
+///
+/// This attribute is identified by the mnemonic 'HR'
+/// elsewhere in this specification.
+///
+#define EFI_VARIABLE_HARDWARE_ERROR_RECORD                   0x00000008
+///
+/// Attributes of Authenticated Variable
+///
+#define EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS   0x00000020
+#define EFI_VARIABLE_APPEND_WRITE                            0x00000040
+///
+/// NOTE: EFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS is deprecated and should be considered reserved.
+///
+#define EFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS              0x00000010
+
+#ifndef VFRCOMPILE
 #include <Guid/WinCertificate.h>
 ///
 /// Enumeration of memory types introduced in UEFI.
@@ -83,7 +99,7 @@ typedef enum {
   ///
   EfiPalCode,
   ///
-  /// A memory region that operates as EfiConventionalMemory, 
+  /// A memory region that operates as EfiConventionalMemory,
   /// however it happens to also support byte-addressable non-volatility.
   ///
   EfiPersistentMemory,
@@ -155,27 +171,6 @@ typedef struct {
   UINT32  Reserved;
 } EFI_TABLE_HEADER;
 
-///
-/// Attributes of variable.
-///
-#define EFI_VARIABLE_NON_VOLATILE                            0x00000001
-#define EFI_VARIABLE_BOOTSERVICE_ACCESS                      0x00000002
-#define EFI_VARIABLE_RUNTIME_ACCESS                          0x00000004
-///
-/// This attribute is identified by the mnemonic 'HR'
-/// elsewhere in this specification.
-///
-#define EFI_VARIABLE_HARDWARE_ERROR_RECORD                   0x00000008
-///
-/// Attributes of Authenticated Variable
-///
-#define EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS   0x00000020
-#define EFI_VARIABLE_APPEND_WRITE                            0x00000040
-///
-/// NOTE: EFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS is deprecated and should be considered reserved.
-///
-#define EFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS              0x00000010
-
 ///
 /// AuthInfo is a WIN_CERTIFICATE using the wCertificateType
 /// WIN_CERTIFICATE_UEFI_GUID and the CertType
@@ -229,5 +224,6 @@ typedef struct {
   ///
   WIN_CERTIFICATE_UEFI_GUID   AuthInfo;
  } EFI_VARIABLE_AUTHENTICATION_2;
+#endif // VFRCOMPILE
 
 #endif
index aad1d35..6b92b3e 100644 (file)
@@ -3,14 +3,8 @@
   structure prototypes, global variables and constants that
   are needed for porting PXE to EFI.
 
-Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>
-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.
+Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
+SPDX-License-Identifier: BSD-2-Clause-Patent
 
   @par Revision Reference:
   32/64-bit PXE specification:
index b82bcd9..7e30136 100644 (file)
@@ -5,14 +5,8 @@
   If a code construct is defined in the UEFI 2.7 specification it must be included
   by this include file.
 
-Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
-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.
+Copyright (c) 2006 - 2019, Intel Corporation. All rights reserved.<BR>
+SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
 
@@ -35,7 +29,7 @@ typedef enum {
   ///
   AllocateAnyPages,
   ///
-  /// Allocate any available range of pages whose uppermost address is less than 
+  /// Allocate any available range of pages whose uppermost address is less than
   /// or equal to a specified maximum address.
   ///
   AllocateMaxAddress,
@@ -79,7 +73,7 @@ typedef enum {
 #define EFI_MEMORY_XP               0x0000000000004000ULL
 #define EFI_MEMORY_RO               0x0000000000020000ULL
 //
-// Physical memory persistence attribute. 
+// Physical memory persistence attribute.
 // The memory region supports byte-addressable non-volatility.
 //
 #define EFI_MEMORY_NV               0x0000000000008000ULL
@@ -129,7 +123,7 @@ typedef struct {
   UINT64                NumberOfPages;
   ///
   /// Attributes of the memory region that describe the bit mask of capabilities
-  /// for that memory region, and not necessarily the current settings for that 
+  /// for that memory region, and not necessarily the current settings for that
   /// memory region.
   ///
   UINT64                Attribute;
@@ -313,8 +307,8 @@ EFI_STATUS
   @retval EFI_NOT_FOUND         1) There are no EFI_DRIVER_BINDING_PROTOCOL instances
                                 present in the system.
                                 2) No drivers were connected to ControllerHandle.
-  @retval EFI_SECURITY_VIOLATION 
-                                The user has no permission to start UEFI device drivers on the device path 
+  @retval EFI_SECURITY_VIOLATION
+                                The user has no permission to start UEFI device drivers on the device path
                                 associated with the ControllerHandle or specified by the RemainingDevicePath.
 **/
 typedef
@@ -702,13 +696,13 @@ EFI_STATUS
   @param[in]  VendorGuid         A unique identifier for the vendor.
   @param[in]  Attributes         Attributes bitmask to set for the variable.
   @param[in]  DataSize           The size in bytes of the Data buffer. Unless the EFI_VARIABLE_APPEND_WRITE or
-                                 EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS attribute is set, a size of zero 
-                                 causes the variable to be deleted. When the EFI_VARIABLE_APPEND_WRITE attribute is 
-                                 set, then a SetVariable() call with a DataSize of zero will not cause any change to 
-                                 the variable value (the timestamp associated with the variable may be updated however 
-                                 even if no new data value is provided,see the description of the 
-                                 EFI_VARIABLE_AUTHENTICATION_2 descriptor below. In this case the DataSize will not 
-                                 be zero since the EFI_VARIABLE_AUTHENTICATION_2 descriptor will be populated). 
+                                 EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS attribute is set, a size of zero
+                                 causes the variable to be deleted. When the EFI_VARIABLE_APPEND_WRITE attribute is
+                                 set, then a SetVariable() call with a DataSize of zero will not cause any change to
+                                 the variable value (the timestamp associated with the variable may be updated however
+                                 even if no new data value is provided,see the description of the
+                                 EFI_VARIABLE_AUTHENTICATION_2 descriptor below. In this case the DataSize will not
+                                 be zero since the EFI_VARIABLE_AUTHENTICATION_2 descriptor will be populated).
   @param[in]  Data               The contents for the variable.
 
   @retval EFI_SUCCESS            The firmware has successfully stored the variable and its data as
@@ -722,7 +716,7 @@ EFI_STATUS
   @retval EFI_WRITE_PROTECTED    The variable in question cannot be deleted.
   @retval EFI_SECURITY_VIOLATION The variable could not be written due to EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACESS being set,
                                  but the AuthInfo does NOT pass the validation check carried out by the firmware.
-  
+
   @retval EFI_NOT_FOUND          The variable trying to be updated or deleted was not found.
 
 **/
@@ -870,10 +864,10 @@ EFI_STATUS
   @retval EFI_LOAD_ERROR         Image was not loaded because the image format was corrupt or not
                                  understood.
   @retval EFI_DEVICE_ERROR       Image was not loaded because the device returned a read error.
-  @retval EFI_ACCESS_DENIED      Image was not loaded because the platform policy prohibits the 
+  @retval EFI_ACCESS_DENIED      Image was not loaded because the platform policy prohibits the
                                  image from being loaded. NULL is returned in *ImageHandle.
-  @retval EFI_SECURITY_VIOLATION Image was loaded and an ImageHandle was created with a 
-                                 valid EFI_LOADED_IMAGE_PROTOCOL. However, the current 
+  @retval EFI_SECURITY_VIOLATION Image was loaded and an ImageHandle was created with a
+                                 valid EFI_LOADED_IMAGE_PROTOCOL. However, the current
                                  platform policy specifies that the image should not be started.
 **/
 typedef
@@ -912,15 +906,15 @@ EFI_STATUS
 /**
   Terminates a loaded EFI image and returns control to boot services.
 
-  @param[in]  ImageHandle       Handle that identifies the image. This parameter is passed to the 
+  @param[in]  ImageHandle       Handle that identifies the image. This parameter is passed to the
                                 image on entry.
   @param[in]  ExitStatus        The image's exit code.
   @param[in]  ExitDataSize      The size, in bytes, of ExitData. Ignored if ExitStatus is EFI_SUCCESS.
   @param[in]  ExitData          The pointer to a data buffer that includes a Null-terminated string,
-                                optionally followed by additional binary data. The string is a 
-                                description that the caller may use to further indicate the reason 
-                                for the image's exit. ExitData is only valid if ExitStatus 
-                                is something other than EFI_SUCCESS. The ExitData buffer 
+                                optionally followed by additional binary data. The string is a
+                                description that the caller may use to further indicate the reason
+                                for the image's exit. ExitData is only valid if ExitStatus
+                                is something other than EFI_SUCCESS. The ExitData buffer
                                 must be allocated by calling AllocatePool().
 
   @retval EFI_SUCCESS           The image specified by ImageHandle was unloaded.
@@ -1020,10 +1014,7 @@ EFI_STATUS
                                 EfiResetShutdown the data buffer starts with a Null-terminated
                                 string, optionally followed by additional binary data.
                                 The string is a description that the caller may use to further
-                                indicate the reason for the system reset. ResetData is only
-                                valid if ResetStatus is something other than EFI_SUCCESS
-                                unless the ResetType is EfiResetPlatformSpecific
-                                where a minimum amount of ResetData is always required.
+                                indicate the reason for the system reset.
                                 For a ResetType of EfiResetPlatformSpecific the data buffer
                                 also starts with a Null-terminated string that is followed
                                 by an EFI_GUID that describes the specific type of reset to perform.
@@ -1454,7 +1445,7 @@ typedef enum {
   ///
   ByRegisterNotify,
   ///
-  /// Retrieve the set of handles from the handle database that support a 
+  /// Retrieve the set of handles from the handle database that support a
   /// specified protocol.
   ///
   ByProtocol
@@ -1683,10 +1674,10 @@ typedef struct {
   @retval EFI_INVALID_PARAMETER CapsuleCount is 0.
   @retval EFI_DEVICE_ERROR      The capsule update was started, but failed due to a device error.
   @retval EFI_UNSUPPORTED       The capsule type is not supported on this platform.
-  @retval EFI_OUT_OF_RESOURCES  When ExitBootServices() has been previously called this error indicates the capsule 
-                                is compatible with this platform but is not capable of being submitted or processed 
+  @retval EFI_OUT_OF_RESOURCES  When ExitBootServices() has been previously called this error indicates the capsule
+                                is compatible with this platform but is not capable of being submitted or processed
                                 in runtime. The caller may resubmit the capsule prior to ExitBootServices().
-  @retval EFI_OUT_OF_RESOURCES  When ExitBootServices() has not been previously called then this error indicates 
+  @retval EFI_OUT_OF_RESOURCES  When ExitBootServices() has not been previously called then this error indicates
                                 the capsule is compatible with this platform but there are insufficient resources to process.
 
 **/
@@ -1714,10 +1705,10 @@ EFI_STATUS
   @retval EFI_UNSUPPORTED       The capsule type is not supported on this platform, and
                                 MaximumCapsuleSize and ResetType are undefined.
   @retval EFI_INVALID_PARAMETER MaximumCapsuleSize is NULL.
-  @retval EFI_OUT_OF_RESOURCES  When ExitBootServices() has been previously called this error indicates the capsule 
-                                is compatible with this platform but is not capable of being submitted or processed 
+  @retval EFI_OUT_OF_RESOURCES  When ExitBootServices() has been previously called this error indicates the capsule
+                                is compatible with this platform but is not capable of being submitted or processed
                                 in runtime. The caller may resubmit the capsule prior to ExitBootServices().
-  @retval EFI_OUT_OF_RESOURCES  When ExitBootServices() has not been previously called then this error indicates 
+  @retval EFI_OUT_OF_RESOURCES  When ExitBootServices() has not been previously called then this error indicates
                                 the capsule is compatible with this platform but there are insufficient resources to process.
 
 **/
@@ -2190,8 +2181,6 @@ typedef struct {
 
 #if   defined (MDE_CPU_IA32)
   #define EFI_REMOVABLE_MEDIA_FILE_NAME   EFI_REMOVABLE_MEDIA_FILE_NAME_IA32
-#elif defined (MDE_CPU_IPF)
-  #define EFI_REMOVABLE_MEDIA_FILE_NAME   EFI_REMOVABLE_MEDIA_FILE_NAME_IA64
 #elif defined (MDE_CPU_X64)
   #define EFI_REMOVABLE_MEDIA_FILE_NAME   EFI_REMOVABLE_MEDIA_FILE_NAME_X64
 #elif defined (MDE_CPU_EBC)
@@ -2203,6 +2192,11 @@ typedef struct {
   #error Unknown Processor Type
 #endif
 
+//
+// The directory within the active EFI System Partition defined for delivery of capsule to firmware
+//
+#define EFI_CAPSULE_FILE_DIRECTORY            L"\\EFI\\UpdateCapsule\\"
+
 #include <Uefi/UefiPxe.h>
 #include <Uefi/UefiGpt.h>
 #include <Uefi/UefiInternalFormRepresentation.h>
index 1b4b19e..eb93ece 100644 (file)
@@ -1,14 +1,8 @@
 /** @file
   Processor or Compiler specific defines and types x64 (Intel 64, AMD64).
 
-  Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
-  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.             
+  Copyright (c) 2006 - 2019, Intel Corporation. All rights reserved.<BR>
+  SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
 
@@ -27,7 +21,7 @@
 #pragma pack()
 #endif
 
-#if defined(__GNUC__) && defined(__pic__) && !defined(USING_LTO)
+#if defined(__GNUC__) && defined(__pic__) && !defined(USING_LTO)  && !defined(__APPLE__)
 //
 // Mark all symbol declarations and references as hidden, meaning they will
 // not be subject to symbol preemption. This allows the compiler to refer to
 //
 
 //
-// This warning is for potentially uninitialized local variable, and it may cause false 
+// This warning is for potentially uninitialized local variable, and it may cause false
 // positive issues in VS2013 and VS2015 build
 //
 #pragma warning ( disable : 4701 )
-  
+
 //
-// This warning is for potentially uninitialized local pointer variable, and it may cause 
+// This warning is for potentially uninitialized local pointer variable, and it may cause
 // false positive issues in VS2013 and VS2015 build
 //
 #pragma warning ( disable : 4703 )
-  
+
 #endif
 
 #endif
@@ -260,6 +254,11 @@ typedef INT64   INTN;
 ///
 #define MAX_ADDRESS   0xFFFFFFFFFFFFFFFFULL
 
+///
+/// Maximum usable address at boot time
+///
+#define MAX_ALLOC_ADDRESS   MAX_ADDRESS
+
 ///
 /// Maximum legal x64 INTN and UINTN values.
 ///
@@ -294,24 +293,24 @@ typedef INT64   INTN;
 #elif defined(_MSC_EXTENSIONS)
   ///
   /// Microsoft* compiler specific method for EFIAPI calling convention.
-  /// 
-  #define EFIAPI __cdecl  
+  ///
+  #define EFIAPI __cdecl
 #elif defined(__GNUC__)
   ///
   /// Define the standard calling convention regardless of optimization level.
   /// The GCC support assumes a GCC compiler that supports the EFI ABI. The EFI
-  /// ABI is much closer to the x64 Microsoft* ABI than standard x64 (x86-64) 
-  /// GCC ABI. Thus a standard x64 (x86-64) GCC compiler can not be used for 
-  /// x64. Warning the assembly code in the MDE x64 does not follow the correct 
+  /// ABI is much closer to the x64 Microsoft* ABI than standard x64 (x86-64)
+  /// GCC ABI. Thus a standard x64 (x86-64) GCC compiler can not be used for
+  /// x64. Warning the assembly code in the MDE x64 does not follow the correct
   /// ABI for the standard x64 (x86-64) GCC.
   ///
-  #define EFIAPI 
+  #define EFIAPI
 #else
   ///
   /// The default for a non Microsoft* or GCC compiler is to assume the EFI ABI
-  /// is the standard. 
+  /// is the standard.
   ///
-  #define EFIAPI       
+  #define EFIAPI
 #endif
 
 #if defined(__GNUC__)
@@ -324,13 +323,13 @@ typedef INT64   INTN;
 
 /**
   Return the pointer to the first instruction of a function given a function pointer.
-  On x64 CPU architectures, these two pointer values are the same, 
+  On x64 CPU architectures, these two pointer values are the same,
   so the implementation of this macro is very simple.
-  
+
   @param  FunctionPointer   A pointer to a function.
 
   @return The pointer to the first instruction of a function given a function pointer.
-  
+
 **/
 #define FUNCTION_ENTRY_POINT(FunctionPointer) (VOID *)(UINTN)(FunctionPointer)