efirtlib.h 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191
  1. #ifndef _EFI_RT_LIB_INCLUDE_
  2. #define _EFI_RT_LIB_INCLUDE_
  3. /*++
  4. Copyright (c) 1998 Intel Corporation
  5. Module Name:
  6. efilib.h
  7. Abstract:
  8. EFI Runtime library functions
  9. Revision History
  10. --*/
  11. #include "efidebug.h"
  12. #include "efipart.h"
  13. #if defined(_M_X64) || defined(__x86_64__) || defined(__amd64__)
  14. #include "x86_64/efilibplat.h"
  15. #elif defined(_M_IX86) || defined(__i386__)
  16. #include "ia32/efilibplat.h"
  17. #elif defined(_M_IA64) || defined(__ia64__)
  18. #include "ia64/efilibplat.h"
  19. #elif defined (_M_ARM64) || defined(__aarch64__)
  20. #include "aarch64/efilibplat.h"
  21. #elif defined (_M_ARM) || defined(__arm__)
  22. #include "arm/efilibplat.h"
  23. #elif defined (_M_MIPS64) || defined(__mips64__)
  24. #include "mips64el/efilibplat.h"
  25. #endif
  26. VOID
  27. RUNTIMEFUNCTION
  28. RtZeroMem (
  29. IN VOID *Buffer,
  30. IN UINTN Size
  31. );
  32. VOID
  33. RUNTIMEFUNCTION
  34. RtSetMem (
  35. IN VOID *Buffer,
  36. IN UINTN Size,
  37. IN UINT8 Value
  38. );
  39. VOID
  40. RUNTIMEFUNCTION
  41. RtCopyMem (
  42. IN VOID *Dest,
  43. IN CONST VOID *Src,
  44. IN UINTN len
  45. );
  46. INTN
  47. RUNTIMEFUNCTION
  48. RtCompareMem (
  49. IN CONST VOID *Dest,
  50. IN CONST VOID *Src,
  51. IN UINTN len
  52. );
  53. INTN
  54. RUNTIMEFUNCTION
  55. RtStrCmp (
  56. IN CONST CHAR16 *s1,
  57. IN CONST CHAR16 *s2
  58. );
  59. VOID
  60. RUNTIMEFUNCTION
  61. RtStrCpy (
  62. IN CHAR16 *Dest,
  63. IN CONST CHAR16 *Src
  64. );
  65. VOID
  66. RUNTIMEFUNCTION
  67. RtStrnCpy (
  68. IN CHAR16 *Dest,
  69. IN CONST CHAR16 *Src,
  70. IN UINTN Len
  71. );
  72. CHAR16 *
  73. RUNTIMEFUNCTION
  74. RtStpCpy (
  75. IN CHAR16 *Dest,
  76. IN CONST CHAR16 *Src
  77. );
  78. CHAR16 *
  79. RUNTIMEFUNCTION
  80. RtStpnCpy (
  81. IN CHAR16 *Dest,
  82. IN CONST CHAR16 *Src,
  83. IN UINTN Len
  84. );
  85. VOID
  86. RUNTIMEFUNCTION
  87. RtStrCat (
  88. IN CHAR16 *Dest,
  89. IN CONST CHAR16 *Src
  90. );
  91. VOID
  92. RUNTIMEFUNCTION
  93. RtStrnCat (
  94. IN CHAR16 *Dest,
  95. IN CONST CHAR16 *Src,
  96. IN UINTN Len
  97. );
  98. UINTN
  99. RUNTIMEFUNCTION
  100. RtStrLen (
  101. IN CONST CHAR16 *s1
  102. );
  103. UINTN
  104. RUNTIMEFUNCTION
  105. RtStrnLen (
  106. IN CONST CHAR16 *s1,
  107. IN UINTN Len
  108. );
  109. UINTN
  110. RUNTIMEFUNCTION
  111. RtStrSize (
  112. IN CONST CHAR16 *s1
  113. );
  114. INTN
  115. RUNTIMEFUNCTION
  116. RtCompareGuid (
  117. IN EFI_GUID *Guid1,
  118. IN EFI_GUID *Guid2
  119. );
  120. UINT8
  121. RUNTIMEFUNCTION
  122. RtDecimaltoBCD(
  123. IN UINT8 BcdValue
  124. );
  125. UINT8
  126. RUNTIMEFUNCTION
  127. RtBCDtoDecimal(
  128. IN UINT8 BcdValue
  129. );
  130. //
  131. // Virtual mapping transition support. (Only used during
  132. // the virtual address change transisition)
  133. //
  134. VOID
  135. RUNTIMEFUNCTION
  136. RtLibEnableVirtualMappings (
  137. VOID
  138. );
  139. VOID
  140. RUNTIMEFUNCTION
  141. RtConvertList (
  142. IN UINTN DebugDisposition,
  143. IN OUT LIST_ENTRY *ListHead
  144. );
  145. VOID
  146. RUNTIMEFUNCTION
  147. RtAcquireLock (
  148. IN FLOCK *Lock
  149. );
  150. VOID
  151. RUNTIMEFUNCTION
  152. RtReleaseLock (
  153. IN FLOCK *Lock
  154. );
  155. #endif