From: Jordan Justen Date: Tue, 8 Mar 2016 03:18:04 +0000 (-0800) Subject: OvmfPkg PciHostBridgeDxe: Convert X64/IoFifo.asm to NASM X-Git-Tag: edk2-stable201903~7674 X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=commitdiff_plain;h=ace1d0517b656a6d15484e875d73c0fe661ac8c7 OvmfPkg PciHostBridgeDxe: Convert X64/IoFifo.asm to NASM The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert X64/IoFifo.asm to X64/IoFifo.nasm Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen Cc: Laszlo Ersek Reviewed-by: Laszlo Ersek --- diff --git a/OvmfPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf b/OvmfPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf index 5ef1ef67de..edf1657267 100644 --- a/OvmfPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf +++ b/OvmfPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf @@ -52,8 +52,7 @@ Ia32/IoFifo.nasm [Sources.X64] - X64/IoFifo.asm - X64/IoFifo.S + X64/IoFifo.nasm [Protocols] gEfiPciHostBridgeResourceAllocationProtocolGuid ## PRODUCES diff --git a/OvmfPkg/PciHostBridgeDxe/X64/IoFifo.S b/OvmfPkg/PciHostBridgeDxe/X64/IoFifo.S deleted file mode 100644 index decb382028..0000000000 --- a/OvmfPkg/PciHostBridgeDxe/X64/IoFifo.S +++ /dev/null @@ -1,122 +0,0 @@ -#------------------------------------------------------------------------------ -# -# Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.
-# -# 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 -# EFIAPI -# IoReadFifo8 ( -# IN UINTN Port, // rcx -# IN UINTN Count, // rdx -# IN VOID *Buffer // r8 -# ); -#------------------------------------------------------------------------------ -ASM_GLOBAL ASM_PFX(IoReadFifo8) -ASM_PFX(IoReadFifo8): - cld - xchg %rcx, %rdx - xchg %r8, %rdi # rdi: buffer address; r8: save register -rep insb - mov %r8, %rdi # restore rdi - ret - -#------------------------------------------------------------------------------ -# VOID -# EFIAPI -# IoReadFifo16 ( -# IN UINTN Port, // rcx -# IN UINTN Count, // rdx -# IN VOID *Buffer // r8 -# ); -#------------------------------------------------------------------------------ -ASM_GLOBAL ASM_PFX(IoReadFifo16) -ASM_PFX(IoReadFifo16): - cld - xchg %rcx, %rdx - xchg %r8, %rdi # rdi: buffer address; r8: save register -rep insw - mov %r8, %rdi # restore rdi - ret - -#------------------------------------------------------------------------------ -# VOID -# EFIAPI -# IoReadFifo32 ( -# IN UINTN Port, // rcx -# IN UINTN Count, // rdx -# IN VOID *Buffer // r8 -# ); -#------------------------------------------------------------------------------ -ASM_GLOBAL ASM_PFX(IoReadFifo32) -ASM_PFX(IoReadFifo32): - cld - xchg %rcx, %rdx - xchg %r8, %rdi # rdi: buffer address; r8: save register -rep insl - mov %r8, %rdi # restore rdi - ret - -#------------------------------------------------------------------------------ -# VOID -# EFIAPI -# IoWriteFifo8 ( -# IN UINTN Port, // rcx -# IN UINTN Count, // rdx -# IN VOID *Buffer // r8 -# ); -#------------------------------------------------------------------------------ -ASM_GLOBAL ASM_PFX(IoWriteFifo8) -ASM_PFX(IoWriteFifo8): - cld - xchg %rcx, %rdx - xchg %r8, %rsi # rsi: buffer address; r8: save register -rep outsb - mov %r8, %rsi # restore rsi - ret - -#------------------------------------------------------------------------------ -# VOID -# EFIAPI -# IoWriteFifo16 ( -# IN UINTN Port, // rcx -# IN UINTN Count, // rdx -# IN VOID *Buffer // r8 -# ); -#------------------------------------------------------------------------------ -ASM_GLOBAL ASM_PFX(IoWriteFifo16) -ASM_PFX(IoWriteFifo16): - cld - xchg %rcx, %rdx - xchg %r8, %rsi # rsi: buffer address; r8: save register -rep outsw - mov %r8, %rsi # restore rsi - ret - -#------------------------------------------------------------------------------ -# VOID -# EFIAPI -# IoWriteFifo32 ( -# IN UINTN Port, // rcx -# IN UINTN Count, // rdx -# IN VOID *Buffer // r8 -# ); -#------------------------------------------------------------------------------ -ASM_GLOBAL ASM_PFX(IoWriteFifo32) -ASM_PFX(IoWriteFifo32): - cld - xchg %rcx, %rdx - xchg %r8, %rsi # rsi: buffer address; r8: save register -rep outsl - mov %r8, %rsi # restore rsi - ret - diff --git a/OvmfPkg/PciHostBridgeDxe/X64/IoFifo.asm b/OvmfPkg/PciHostBridgeDxe/X64/IoFifo.asm deleted file mode 100644 index 1a3f0ef2ca..0000000000 --- a/OvmfPkg/PciHostBridgeDxe/X64/IoFifo.asm +++ /dev/null @@ -1,126 +0,0 @@ -;------------------------------------------------------------------------------ -; -; Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.
-; -; 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. -; -;------------------------------------------------------------------------------ - - .code - -;------------------------------------------------------------------------------ -; VOID -; EFIAPI -; IoReadFifo8 ( -; IN UINTN Port, // rcx -; IN UINTN Size, // rdx -; IN VOID *Buffer // r8 -; ); -;------------------------------------------------------------------------------ -IoReadFifo8 PROC - cld - xchg rcx, rdx - xchg rdi, r8 ; rdi: buffer address; r8: save rdi -rep insb - mov rdi, r8 ; restore rdi - ret -IoReadFifo8 ENDP - -;------------------------------------------------------------------------------ -; VOID -; EFIAPI -; IoReadFifo16 ( -; IN UINTN Port, // rcx -; IN UINTN Size, // rdx -; IN VOID *Buffer // r8 -; ); -;------------------------------------------------------------------------------ -IoReadFifo16 PROC - cld - xchg rcx, rdx - xchg rdi, r8 ; rdi: buffer address; r8: save rdi -rep insw - mov rdi, r8 ; restore rdi - ret -IoReadFifo16 ENDP - -;------------------------------------------------------------------------------ -; VOID -; EFIAPI -; IoReadFifo32 ( -; IN UINTN Port, // rcx -; IN UINTN Size, // rdx -; IN VOID *Buffer // r8 -; ); -;------------------------------------------------------------------------------ -IoReadFifo32 PROC - cld - xchg rcx, rdx - xchg rdi, r8 ; rdi: buffer address; r8: save rdi -rep insd - mov rdi, r8 ; restore rdi - ret -IoReadFifo32 ENDP - -;------------------------------------------------------------------------------ -; VOID -; EFIAPI -; IoWriteFifo8 ( -; IN UINTN Port, // rcx -; IN UINTN Size, // rdx -; IN VOID *Buffer // r8 -; ); -;------------------------------------------------------------------------------ -IoWriteFifo8 PROC - cld - xchg rcx, rdx - xchg rsi, r8 ; rsi: buffer address; r8: save rsi -rep outsb - mov rsi, r8 ; restore rsi - ret -IoWriteFifo8 ENDP - -;------------------------------------------------------------------------------ -; VOID -; EFIAPI -; IoWriteFifo16 ( -; IN UINTN Port, // rcx -; IN UINTN Size, // rdx -; IN VOID *Buffer // r8 -; ); -;------------------------------------------------------------------------------ -IoWriteFifo16 PROC - cld - xchg rcx, rdx - xchg rsi, r8 ; rsi: buffer address; r8: save rsi -rep outsw - mov rsi, r8 ; restore rsi - ret -IoWriteFifo16 ENDP - -;------------------------------------------------------------------------------ -; VOID -; EFIAPI -; IoWriteFifo32 ( -; IN UINTN Port, // rcx -; IN UINTN Size, // rdx -; IN VOID *Buffer // r8 -; ); -;------------------------------------------------------------------------------ -IoWriteFifo32 PROC - cld - xchg rcx, rdx - xchg rsi, r8 ; rsi: buffer address; r8: save rsi -rep outsd - mov rsi, r8 ; restore rsi - ret -IoWriteFifo32 ENDP - - END - diff --git a/OvmfPkg/PciHostBridgeDxe/X64/IoFifo.nasm b/OvmfPkg/PciHostBridgeDxe/X64/IoFifo.nasm new file mode 100644 index 0000000000..bb3d1da67a --- /dev/null +++ b/OvmfPkg/PciHostBridgeDxe/X64/IoFifo.nasm @@ -0,0 +1,125 @@ +;------------------------------------------------------------------------------ +; +; Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.
+; +; 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. +; +;------------------------------------------------------------------------------ + + DEFAULT REL + SECTION .text + +;------------------------------------------------------------------------------ +; VOID +; EFIAPI +; IoReadFifo8 ( +; IN UINTN Port, // rcx +; IN UINTN Size, // rdx +; IN VOID *Buffer // r8 +; ); +;------------------------------------------------------------------------------ +global ASM_PFX(IoReadFifo8) +ASM_PFX(IoReadFifo8): + cld + xchg rcx, rdx + xchg rdi, r8 ; rdi: buffer address; r8: save rdi +rep insb + mov rdi, r8 ; restore rdi + ret + +;------------------------------------------------------------------------------ +; VOID +; EFIAPI +; IoReadFifo16 ( +; IN UINTN Port, // rcx +; IN UINTN Size, // rdx +; IN VOID *Buffer // r8 +; ); +;------------------------------------------------------------------------------ +global ASM_PFX(IoReadFifo16) +ASM_PFX(IoReadFifo16): + cld + xchg rcx, rdx + xchg rdi, r8 ; rdi: buffer address; r8: save rdi +rep insw + mov rdi, r8 ; restore rdi + ret + +;------------------------------------------------------------------------------ +; VOID +; EFIAPI +; IoReadFifo32 ( +; IN UINTN Port, // rcx +; IN UINTN Size, // rdx +; IN VOID *Buffer // r8 +; ); +;------------------------------------------------------------------------------ +global ASM_PFX(IoReadFifo32) +ASM_PFX(IoReadFifo32): + cld + xchg rcx, rdx + xchg rdi, r8 ; rdi: buffer address; r8: save rdi +rep insd + mov rdi, r8 ; restore rdi + ret + +;------------------------------------------------------------------------------ +; VOID +; EFIAPI +; IoWriteFifo8 ( +; IN UINTN Port, // rcx +; IN UINTN Size, // rdx +; IN VOID *Buffer // r8 +; ); +;------------------------------------------------------------------------------ +global ASM_PFX(IoWriteFifo8) +ASM_PFX(IoWriteFifo8): + cld + xchg rcx, rdx + xchg rsi, r8 ; rsi: buffer address; r8: save rsi +rep outsb + mov rsi, r8 ; restore rsi + ret + +;------------------------------------------------------------------------------ +; VOID +; EFIAPI +; IoWriteFifo16 ( +; IN UINTN Port, // rcx +; IN UINTN Size, // rdx +; IN VOID *Buffer // r8 +; ); +;------------------------------------------------------------------------------ +global ASM_PFX(IoWriteFifo16) +ASM_PFX(IoWriteFifo16): + cld + xchg rcx, rdx + xchg rsi, r8 ; rsi: buffer address; r8: save rsi +rep outsw + mov rsi, r8 ; restore rsi + ret + +;------------------------------------------------------------------------------ +; VOID +; EFIAPI +; IoWriteFifo32 ( +; IN UINTN Port, // rcx +; IN UINTN Size, // rdx +; IN VOID *Buffer // r8 +; ); +;------------------------------------------------------------------------------ +global ASM_PFX(IoWriteFifo32) +ASM_PFX(IoWriteFifo32): + cld + xchg rcx, rdx + xchg rsi, r8 ; rsi: buffer address; r8: save rsi +rep outsd + mov rsi, r8 ; restore rsi + ret +