]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Include/Library/BaseLib.h
IntelFrameworkModulePkg: Add DxeCapsuleLib
[mirror_edk2.git] / MdePkg / Include / Library / BaseLib.h
index b7ec333945d26566ef21dda706ecb23637ba4f4c..213bc0c0e100d4e380020a6db53243f094156a92 100644 (file)
@@ -2,9 +2,9 @@
   Provides string functions, linked list functions, math functions, synchronization\r
   functions, and CPU architecture-specific functions.\r
 \r
-Copyright (c) 2006 - 2010, Intel Corporation.  All rights reserved<BR>\r
-Portions copyright (c) 2008-2009 Apple Inc. All rights reserved.<BR>\r
-All rights reserved. This program and the accompanying materials\r
+Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.<BR>\r
+Portions copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>\r
+This program and the accompanying materials\r
 are licensed and made available under the terms and conditions of the BSD License\r
 which accompanies this distribution.  The full text of the license may be found at\r
 http://opensource.org/licenses/bsd-license.php.\r
@@ -636,6 +636,9 @@ StrHexToUint64 (
   to the ASCII string Destination by copying the lower 8 bits of\r
   each Unicode character. It returns Destination.\r
 \r
+  The caller is responsible to make sure Destination points to a buffer with size\r
+  equal or greater than ((StrLen (Source) + 1) * sizeof (CHAR8)) in bytes.\r
+\r
   If any Unicode characters in Source contain non-zero value in\r
   the upper 8 bits, then ASSERT().\r
 \r
@@ -1470,8 +1473,8 @@ IsListEmpty (
   @param  List  A pointer to the head node of a doubly linked list.\r
   @param  Node  A pointer to a node in the doubly linked list.\r
 \r
-  @retval TRUE  Node is one of the nodes in the doubly linked list.\r
-  @retval FALSE Node is not one of the nodes in the doubly linked list.\r
+  @retval TRUE  Node is the head of the doubly-linked list pointed by List.\r
+  @retval FALSE Node is not the head of the doubly-linked list pointed by List.\r
 \r
 **/\r
 BOOLEAN\r
@@ -4929,6 +4932,28 @@ typedef union {
   UINTN     UintN;\r
 } IA32_CR4;\r
 \r
+///\r
+/// Byte packed structure for a segment descriptor in a GDT/LDT.\r
+///\r
+typedef union {\r
+  struct {\r
+    UINT32  LimitLow:16;\r
+    UINT32  BaseLow:16;\r
+    UINT32  BaseMid:8;\r
+    UINT32  Type:4;\r
+    UINT32  S:1;\r
+    UINT32  DPL:2;\r
+    UINT32  P:1;\r
+    UINT32  LimitHigh:4;\r
+    UINT32  AVL:1;\r
+    UINT32  L:1;\r
+    UINT32  DB:1;\r
+    UINT32  G:1;\r
+    UINT32  BaseHigh:8;\r
+  } Bits;\r
+  UINT64  Uint64;\r
+} IA32_SEGMENT_DESCRIPTOR;\r
+\r
 ///\r
 /// Byte packed structure for an IDTR, GDTR, LDTR descriptor.\r
 ///\r