1 #------------------------------------------------------------------------------
3 #* Copyright (c) 2008 - 2010, Intel Corporation. All rights reserved.<BR>
4 #* This program and the accompanying materials
5 #* are licensed and made available under the terms and conditions of the BSD License
6 #* which accompanies this distribution. The full text of the license may be found at
7 #* http://opensource.org/licenses/bsd-license.php
9 #* THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 #* WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
18 #------------------------------------------------------------------------------
21 .globl ASM_PFX(EfiHalt)
22 .globl ASM_PFX(EfiWbinvd)
23 .globl ASM_PFX(EfiInvd)
24 .globl ASM_PFX(EfiCpuid)
25 .globl ASM_PFX(EfiReadTsc)
26 .globl ASM_PFX(EfiDisableCache)
27 .globl ASM_PFX(EfiEnableCache)
28 .globl ASM_PFX(EfiReadMsr)
29 .globl ASM_PFX(EfiWriteMsr)
30 .globl ASM_PFX(EfiGetEflags)
31 .globl ASM_PFX(EfiDisableInterrupts)
32 .globl ASM_PFX(EfiEnableInterrupts)
33 .globl ASM_PFX(EfiCpuidExt)
38 #------------------------------------------------------------------------------
43 #------------------------------------------------------------------------------
49 #------------------------------------------------------------------------------
54 #------------------------------------------------------------------------------
60 #------------------------------------------------------------------------------
65 #------------------------------------------------------------------------------
70 #------------------------------------------------------------------------------
73 # IN UINT32 RegisterInEax, // rcx
74 # OUT EFI_CPUID_REGISTER *Reg OPTIONAL // rdx
76 #------------------------------------------------------------------------------
92 #------------------------------------------------------------------------------
95 # IN UINT32 Index, // rcx
97 #------------------------------------------------------------------------------
104 #------------------------------------------------------------------------------
107 # IN UINT32 Index, // rcx
108 # IN UINT64 Value // rdx
110 #------------------------------------------------------------------------------
111 ASM_PFX(EfiWriteMsr):
117 #------------------------------------------------------------------------------
122 #------------------------------------------------------------------------------
129 #------------------------------------------------------------------------------
134 #------------------------------------------------------------------------------
135 ASM_PFX(EfiDisableCache):
136 # added a check to see if cache is already disabled. If it is, then skip.
148 #------------------------------------------------------------------------------
153 #------------------------------------------------------------------------------
154 ASM_PFX(EfiEnableCache):
157 and $0xffffffff9fffffff,%rax
161 #------------------------------------------------------------------------------
166 #------------------------------------------------------------------------------
167 ASM_PFX(EfiGetEflags):
172 #------------------------------------------------------------------------------
174 # EfiDisableInterrupts (
177 #------------------------------------------------------------------------------
178 ASM_PFX(EfiDisableInterrupts):
182 #------------------------------------------------------------------------------
184 # EfiEnableInterrupts (
187 #------------------------------------------------------------------------------
188 ASM_PFX(EfiEnableInterrupts):
191 #------------------------------------------------------------------------------
194 # IN UINT32 RegisterInEax,
195 # IN UINT32 CacheLevel,
196 # OUT EFI_CPUID_REGISTER *Regs
198 #------------------------------------------------------------------------------
199 ASM_PFX(EfiCpuidExt):