]> git.proxmox.com Git - mirror_edk2.git/blobdiff - IntelFrameworkPkg/Include/Protocol/LegacyBiosPlatform.h
clean up non-English characters.
[mirror_edk2.git] / IntelFrameworkPkg / Include / Protocol / LegacyBiosPlatform.h
index 4b39f852808cb5189afa550c021db220e56dfed2..160c1e866b6432ec15fd53c838d89a8064ee4542 100644 (file)
@@ -4,7 +4,7 @@
   the Legacy BIOS protocol is generic and consumes this protocol.\r
   A driver that matches the Legacy16 produces this protocol\r
 \r
-  Copyright (c) 2007,2009  Intel Corporation\r
+  Copyright (c) 2007 - 2009  Intel Corporation\r
   All rights reserved. This program and the accompanying materials\r
   are licensed and made available under the terms and conditions of the BSD License\r
   which accompanies this distribution.  The full text of the license may be found at\r
@@ -13,8 +13,6 @@
   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
 \r
-  Module Name:  LegacyBiosPlatform.h\r
-\r
   @par Revision Reference:\r
   This protocol is defined in Framework for EFI Compatibility Support Module spec\r
   Version 0.97.\r
 #ifndef _EFI_LEGACY_BIOS_PLATFORM_H_\r
 #define _EFI_LEGACY_BIOS_PLATFORM_H_\r
 \r
-#include <FrameworkDxe.h>\r
+///\r
+/// Legacy BIOS Platform depends on HDD_INFO and EFI_COMPATIBILITY16_TABLE that\r
+/// are defined with the Legacy BIOS Protocol\r
+///\r
+#include <Protocol/LegacyBios.h>\r
 \r
 #define EFI_LEGACY_BIOS_PLATFORM_PROTOCOL_GUID \\r
   { \\r
@@ -39,10 +41,10 @@ typedef struct _EFI_LEGACY_BIOS_PLATFORM_PROTOCOL EFI_LEGACY_BIOS_PLATFORM_PROTO
 typedef enum {\r
   ///\r
   /// This mode is invoked twice. The first invocation has LegacySegment and\r
-  /// LegacyOffset set to 0. The mode returns the MP table address in EFI memory and its size.\r
+  /// LegacyOffset set to 0. The mode returns the MP table address in EFI memory, along with its size.\r
   /// The second invocation has LegacySegment and LegacyOffset set to the location\r
   /// in the 0xF0000 or 0xE0000 block to which the MP table is to be copied. The second\r
-  /// invocation allows any MP table address fix ups to occur in the EFI memory copy of the\r
+  /// invocation allows any MP table address fixes to occur in the EFI memory copy of the\r
   /// MP table. The caller, not EfiGetPlatformBinaryMpTable, copies the modified MP\r
   /// table to the allocated region in 0xF0000 or 0xE0000 block after the second invocation.\r
   ///\r
@@ -57,12 +59,12 @@ typedef enum {
   ///     Bit 1 = 1 0xE0000 64 KB block.\r
   ///     Multiple bits can be set.\r
   ///\r
-  ///   Alignment Bit mapped address alignment granularity. \r
+  ///   Alignment Bit-mapped address alignment granularity. \r
   ///     The first nonzero bit from the right is the address granularity.\r
   ///\r
-  //    LegacySegment Segment where EfiCompatibility code will place the MP table.\r
+  //    LegacySegment Segment in which EfiCompatibility code will place the MP table.\r
   ///\r
-  ///   LegacyOffset Offset where EfiCompatibility code will place the MP table.\r
+  ///   LegacyOffset Offset in which EfiCompatibility code will place the MP table.\r
   ///\r
   /// The return values associated with this mode are:\r
   ///\r
@@ -72,15 +74,15 @@ typedef enum {
   ///\r
   EfiGetPlatformBinaryMpTable      = 0,\r
   ///\r
-  /// This mode returns a block of data. The contents and usage is IBV or OEM defined.\r
+  /// This mode returns a block of data. The content and usage is IBV or OEM defined.\r
   /// OEMs or IBVs normally use this function for nonstandard Compatibility16 runtime soft\r
   /// INTs. It is the responsibility of this routine to coalesce multiple OEM 16 bit functions, if\r
   /// they exist, into one coherent package that is understandable by the Compatibility16 code.\r
   /// This function is invoked twice. The first invocation has LegacySegment and\r
-  /// LegacyOffset set to 0. The function returns the table address in EFI memory and its size.\r
+  /// LegacyOffset set to 0. The function returns the table address in EFI memory, as well as its size.\r
   /// The second invocation has LegacySegment and LegacyOffset set to the location\r
   /// in the 0xF0000 or 0xE0000 block to which the data (table) is to be copied. The second\r
-  /// invocation allows any data (table) address fix ups to occur in the EFI memory copy of\r
+  /// invocation allows any data (table) address fixes to occur in the EFI memory copy of\r
   /// the table. The caller, not GetOemIntData(), copies the modified data (table) to the\r
   /// allocated region in 0xF0000 or 0xE0000 block after the second invocation.\r
   ///\r
@@ -98,9 +100,9 @@ typedef enum {
   ///   Alignment Bit mapped address alignment granularity. \r
   ///     The first nonzero bit from the right is the address granularity.\r
   ///\r
-  ///   LegacySegment Segment where EfiCompatibility code will place the table or data.\r
+  ///   LegacySegment Segment in which EfiCompatibility code will place the table or data.\r
   ///\r
-  ///   LegacyOffset Offset where EfiCompatibility code will place the table or data.\r
+  ///   LegacyOffset Offset in which EfiCompatibility code will place the table or data.\r
   ///\r
   /// The return values associated with this mode are:\r
   ///\r
@@ -110,17 +112,19 @@ typedef enum {
   ///\r
   EfiGetPlatformBinaryOemIntData   = 1,\r
   ///\r
-  /// This mode returns a block of data. The contents and usage is IBV defined. OEMs or\r
+  /// This mode returns a block of data. The content and usage is IBV defined. OEMs or\r
   /// IBVs normally use this mode for nonstandard Compatibility16 runtime 16 bit routines. It\r
   /// is the responsibility of this routine to coalesce multiple OEM 16 bit functions, if they\r
   /// exist, into one coherent package that is understandable by the Compatibility16 code.\r
-  /// An example usage might be a legacy mobile BIOS that has a pre existing runtime\r
+  /// \r
+  /// Example usage: A legacy mobile BIOS that has a pre-existing runtime\r
   /// interface to return the battery status to calling applications.\r
+  ///\r
   /// This mode is invoked twice. The first invocation has LegacySegment and\r
   /// LegacyOffset set to 0. The mode returns the table address in EFI memory and its size.\r
   /// The second invocation has LegacySegment and LegacyOffset set to the location\r
   /// in the 0xF0000 or 0xE0000 block to which the table is to be copied. The second\r
-  /// invocation allows any table address fix ups to occur in the EFI memory copy of the table.\r
+  /// invocation allows any table address fixes to occur in the EFI memory copy of the table.\r
   /// The caller, not EfiGetPlatformBinaryOem16Data, copies the modified table to\r
   /// the allocated region in 0xF0000 or 0xE0000 block after the second invocation.\r
   ///\r
@@ -138,9 +142,9 @@ typedef enum {
   ///   Alignment Bit mapped address alignment granularity. \r
   ///     The first nonzero bit from the right is the address granularity.\r
   ///\r
-  ///   LegacySegment Segment where EfiCompatibility code will place the table or data.\r
+  ///   LegacySegment Segment in which EfiCompatibility code will place the table or data.\r
   ///\r
-  ///   LegacyOffset Offset where EfiCompatibility code will place the table or data.\r
+  ///   LegacyOffset Offset in which EfiCompatibility code will place the table or data.\r
   ///\r
   /// The return values associated with this mode are:\r
   ///\r
@@ -150,12 +154,14 @@ typedef enum {
   ///\r
   EfiGetPlatformBinaryOem16Data    = 2,\r
 ///\r
-/// This mode returns a block of data. The contents and usage is IBV defined. OEMs or\r
+/// This mode returns a block of data. The content and usage are IBV defined. OEMs or\r
 /// IBVs normally use this mode for nonstandard Compatibility16 runtime 32 bit routines. It\r
 /// is the responsibility of this routine to coalesce multiple OEM 32 bit functions, if they\r
 /// exist, into one coherent package that is understandable by the Compatibility16 code.\r
-/// An example usage might be a legacy mobile BIOS that has a pre existing runtime\r
+/// \r
+/// Example usage: A legacy mobile BIOS that has a pre existing runtime\r
 /// interface to return the battery status to calling applications.\r
+///\r
 /// This mode is invoked twice. The first invocation has LegacySegment and\r
 /// LegacyOffset set to 0. The mode returns the table address in EFI memory and its size.\r
 /// \r
@@ -166,11 +172,11 @@ typedef enum {
 /// the allocated region in 0xF0000 or 0xE0000 block after the second invocation..\r
 ///\r
 /// Note: There are two generic mechanisms by which this mode can be used.\r
-///  - Mechanism 1: This mode returns the data and the Legacy BIOS Protocol copies\r
+/// Mechanism 1: This mode returns the data and the Legacy BIOS Protocol copies\r
 /// the data into the F0000 or E0000 block in the Compatibility16 code. The\r
 /// EFI_COMPATIBILITY16_TABLE entries Oem32Segment and Oem32Offset can\r
 /// be viewed as two UINT16 entries.\r
-/// Mechanism 2: This mode directly fills in the EFI_COMPATIBILITY16_TABLE with\r
+/// Mechanism 2: This mode directly fills in the EFI_COMPATIBILITY16_TABLE with\r
 /// a pointer to the INT15 E820 region containing the 32 bit code. It returns\r
 /// EFI_UNSUPPORTED. The EFI_COMPATIBILITY16_TABLE entries,\r
 /// Oem32Segment and Oem32Offset, can be viewed as two UINT16 entries or\r
@@ -180,7 +186,7 @@ typedef enum {
 ///\r
 ///   TableSize Size of data.\r
 ///\r
-///   Location Location to place the table. 0x00 \96 Either 0xE0000 or 0xF0000 64 KB blocks.\r
+///   Location Location to place the table. 0x00 or 0xE0000 or 0xF0000 64 KB blocks.\r
 ///       Bit 0 = 1 0xF0000 64 KB block.\r
 ///       Bit 1 = 1 0xE0000 64 KB block.\r
 ///       Multiple bits can be set.\r
@@ -188,9 +194,9 @@ typedef enum {
 ///   Alignment Bit mapped address alignment granularity. \r
 ///       The first nonzero bit from the right is the address granularity.\r
 ///\r
-///   LegacySegment Segment where EfiCompatibility code will place the table or data.\r
+///   LegacySegment Segment in which EfiCompatibility code will place the table or data.\r
 ///\r
-///   LegacyOffset Offset where EfiCompatibility code will place the table or data.\r
+///   LegacyOffset Offset in which EfiCompatibility code will place the table or data.\r
 ///\r
 /// The return values associated with this mode are:\r
 ///   EFI_SUCCESS The data was returned successfully.\r
@@ -214,9 +220,9 @@ EfiGetPlatformBinaryOem32Data    = 3,
   ///   Alignment Bit mapped address alignment granularity. \r
   ///     The first nonzero bit from the right is the address granularity.\r
   ///\r
-  ///   LegacySegment Segment where EfiCompatibility code will place the table or data.\r
+  ///   LegacySegment Segment in which EfiCompatibility code will place the table or data.\r
   ///\r
-  ///   LegacyOffset Offset where EfiCompatibility code will place the table or data.\r
+  ///   LegacyOffset Offset in which EfiCompatibility code will place the table or data.\r
   ///\r
   /// The return values associated with this mode are:\r
   ///\r
@@ -228,7 +234,7 @@ EfiGetPlatformBinaryOem32Data    = 3,
   ///\r
   EfiGetPlatformBinaryTpmBinary    = 4,\r
   ///\r
-  /// The mode finds the Compatibility16 \93ROM\94 image.\r
+  /// The mode finds the Compatibility16 Rom Image.\r
   ///\r
   /// The function parameters associated with this mode are:\r
   ///\r
@@ -407,11 +413,6 @@ typedef enum {
   EfiPlatformHookAfterRomInit     = 2\r
 } EFI_GET_PLATFORM_HOOK_MODE;\r
 \r
-\r
-//\r
-//\r
-//\r
-\r
 ///\r
 /// This IRQ has not been assigned to PCI.\r
 ///\r
@@ -423,11 +424,10 @@ typedef enum {
 ///\r
 /// This IRQ has been used by an SIO legacy device and cannot be used by PCI.\r
 ///\r
+#define LEGACY_USED       0xFE\r
+\r
 #pragma pack(1)\r
 \r
-//\r
-//\r
-//\r
 typedef struct {\r
   ///\r
   /// IRQ for this entry.\r
@@ -489,7 +489,7 @@ typedef struct {
   ///\r
   UINT16  CompatibleDid;\r
   ///\r
-  /// If nonzero, a value passed directly to the IRQ miniport\92s Initialize function.\r
+  /// If nonzero, a value passed directly to the IRQ miniport's Initialize function.\r
   ///\r
   UINT32  Miniport;\r
   ///\r
@@ -553,11 +553,11 @@ typedef struct {
   @param  This                  Protocol instance pointer.\r
   @param  Mode                  Specifies what data to return. See See EFI_GET_PLATFORM_INFO_MODE enum.\r
   @param  Table                 Mode specific.  See EFI_GET_PLATFORM_INFO_MODE enum.\r
-  @param  TableSize            Mode specific.  See EFI_GET_PLATFORM_INFO_MODE enum.\r
-  @param  Location             Mode specific.  See EFI_GET_PLATFORM_INFO_MODE enum.\r
+  @param  TableSize                    Mode specific.  See EFI_GET_PLATFORM_INFO_MODE enum.\r
+  @param  Location                     Mode specific.  See EFI_GET_PLATFORM_INFO_MODE enum.\r
   @param  Alignment             Mode specific.  See EFI_GET_PLATFORM_INFO_MODE enum.\r
   @param  LegacySegment         Mode specific.  See EFI_GET_PLATFORM_INFO_MODE enum.\r
-  @param  LegacyOffset                 Mode specific.  See EFI_GET_PLATFORM_INFO_MODE enum.\r
+  @param  LegacyOffset          Mode specific.  See EFI_GET_PLATFORM_INFO_MODE enum.\r
 \r
   @retval EFI_SUCCESS           Data was returned successfully.\r
   @retval EFI_UNSUPPORTED       Mode is not supported on the platform.\r
@@ -651,9 +651,9 @@ EFI_STATUS
 /**\r
   Returns information associated with PCI IRQ routing.\r
   This function returns the following information associated with PCI IRQ routing:\r
-    An IRQ routing table and number of entries in the table\r
-    The $PIR table and its size\r
-    A list of PCI IRQs and the priority order to assign them\r
+    An IRQ routing table and number of entries in the table\r
+    The $PIR table and its size\r
+    A list of PCI IRQs and the priority order to assign them\r
 \r
   @param  This                    Protocol instance pointer.\r
   @param  RoutingTable            Pointer to PCI IRQ Routing table. \r