MdeModulePkg: Remove X86 ASM and S files
NASM has replaced ASM and S files. 1. Remove ASM from all modules. 2. Remove S files from the drivers only. 3. https://bugzilla.tianocore.org/show_bug.cgi?id=881 After NASM is updated, S files can be removed from Library. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Star Zeng <star.zeng@intel.com>
This commit is contained in:
@@ -1,66 +0,0 @@
|
||||
## @file
|
||||
#
|
||||
# Copyright (c) 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
|
||||
# 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.
|
||||
#
|
||||
##
|
||||
|
||||
#-----------------------------------------
|
||||
#VOID
|
||||
#AsmTransferControl (
|
||||
# IN UINT32 S3WakingVector,
|
||||
# IN UINT32 AcpiLowMemoryBase
|
||||
# );
|
||||
#-----------------------------------------
|
||||
|
||||
ASM_GLOBAL ASM_PFX(AsmTransferControl)
|
||||
ASM_PFX(AsmTransferControl):
|
||||
# S3WakingVector :DWORD
|
||||
# AcpiLowMemoryBase :DWORD
|
||||
pushl %ebp
|
||||
movl %esp,%ebp
|
||||
leal LABLE, %eax
|
||||
pushl $0x28 # CS
|
||||
pushl %eax
|
||||
movl 8(%ebp),%ecx
|
||||
shrdl $20,%ecx,%ebx
|
||||
andl $0xf,%ecx
|
||||
movw %cx,%bx
|
||||
movl %ebx, jmp_addr
|
||||
lret
|
||||
LABLE:
|
||||
.byte 0xb8,0x30,0 # mov ax, 30h as selector
|
||||
movw %ax,%ds
|
||||
movw %ax,%es
|
||||
movw %ax,%fs
|
||||
movw %ax,%gs
|
||||
movw %ax,%ss
|
||||
movl %cr0, %eax # Get control register 0
|
||||
.byte 0x66
|
||||
.byte 0x83,0xe0,0xfe # and eax, 0fffffffeh ; Clear PE bit (bit #0)
|
||||
.byte 0xf,0x22,0xc0 # mov cr0, eax ; Activate real mode
|
||||
.byte 0xea # jmp far @jmp_addr
|
||||
jmp_addr:
|
||||
.long 0
|
||||
|
||||
ASM_GLOBAL ASM_PFX(AsmTransferControl32)
|
||||
ASM_PFX(AsmTransferControl32):
|
||||
jmp ASM_PFX(AsmTransferControl)
|
||||
|
||||
# dummy
|
||||
ASM_GLOBAL ASM_PFX(AsmTransferControl16)
|
||||
ASM_PFX(AsmTransferControl16):
|
||||
ASM_GLOBAL ASM_PFX(AsmFixAddress16)
|
||||
ASM_PFX(AsmFixAddress16):
|
||||
.long 0
|
||||
ASM_GLOBAL ASM_PFX(AsmJmpAddr32)
|
||||
ASM_PFX(AsmJmpAddr32):
|
||||
.long 0
|
||||
|
@@ -1,71 +0,0 @@
|
||||
;; @file
|
||||
; This is the assembly code for transferring to control to OS S3 waking vector
|
||||
; for IA32 platform
|
||||
;
|
||||
; 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.
|
||||
;
|
||||
;;
|
||||
.586P
|
||||
.model flat,C
|
||||
.code
|
||||
|
||||
PUBLIC AsmFixAddress16
|
||||
PUBLIC AsmJmpAddr32
|
||||
|
||||
;-----------------------------------------
|
||||
;VOID
|
||||
;AsmTransferControl (
|
||||
; IN UINT32 S3WakingVector,
|
||||
; IN UINT32 AcpiLowMemoryBase
|
||||
; );
|
||||
;-----------------------------------------
|
||||
|
||||
AsmTransferControl PROC
|
||||
; S3WakingVector :DWORD
|
||||
; AcpiLowMemoryBase :DWORD
|
||||
push ebp
|
||||
mov ebp, esp
|
||||
lea eax, @F
|
||||
push 28h ; CS
|
||||
push eax
|
||||
mov ecx, [ebp + 8]
|
||||
shrd ebx, ecx, 20
|
||||
and ecx, 0fh
|
||||
mov bx, cx
|
||||
mov [@jmp_addr], ebx
|
||||
retf
|
||||
@@:
|
||||
DB 0b8h, 30h, 0 ; mov ax, 30h as selector
|
||||
mov ds, ax
|
||||
mov es, ax
|
||||
mov fs, ax
|
||||
mov gs, ax
|
||||
mov ss, ax
|
||||
mov eax, cr0 ; Get control register 0
|
||||
DB 66h
|
||||
DB 83h, 0e0h, 0feh ; and eax, 0fffffffeh ; Clear PE bit (bit #0)
|
||||
DB 0fh, 22h, 0c0h ; mov cr0, eax ; Activate real mode
|
||||
DB 0eah ; jmp far @jmp_addr
|
||||
@jmp_addr DD ?
|
||||
|
||||
AsmTransferControl ENDP
|
||||
|
||||
AsmTransferControl32 PROC
|
||||
jmp AsmTransferControl
|
||||
AsmTransferControl32 ENDP
|
||||
|
||||
; dummy
|
||||
AsmTransferControl16 PROC
|
||||
AsmFixAddress16 DD ?
|
||||
AsmJmpAddr32 DD ?
|
||||
AsmTransferControl16 ENDP
|
||||
|
||||
END
|
Reference in New Issue
Block a user