]> git.proxmox.com Git - mirror_edk2.git/blame - DuetPkg/CpuIoDxe/X64/CpuIoAccess.asm
Remove unused DXS file.
[mirror_edk2.git] / DuetPkg / CpuIoDxe / X64 / CpuIoAccess.asm
CommitLineData
c69dd9df 1 title CpuIoAccess.asm\r
2\r
3;------------------------------------------------------------------------------\r
4;*\r
5;* Copyright (c) 2005 - 2007, Intel Corporation \r
6;* All rights reserved. This program and the accompanying materials \r
7;* are licensed and made available under the terms and conditions of the BSD License \r
8;* which accompanies this distribution. The full text of the license may be found at \r
9;* http://opensource.org/licenses/bsd-license.php \r
10;* \r
11;* THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
12;* WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
13;* \r
14;* Module Name:\r
15;* CpuIoAccess.asm\r
16;* \r
17;* Abstract:\r
18;* Supports x64 CPU IO operation\r
19;*\r
20;------------------------------------------------------------------------------\r
21;\r
22; \r
23; \r
24; Abstract:\r
25; \r
26; \r
27;------------------------------------------------------------------------------\r
28\r
29.CODE\r
30\r
31;------------------------------------------------------------------------------\r
32; UINT8\r
33; CpuIoRead8 (\r
34; UINT16 Port // rcx\r
35; )\r
36;------------------------------------------------------------------------------\r
37CpuIoRead8 PROC PUBLIC\r
38 xor eax, eax\r
39 mov dx, cx\r
40 in al, dx\r
41 ret\r
42CpuIoRead8 ENDP\r
43\r
44;------------------------------------------------------------------------------\r
45; VOID\r
46; CpuIoWrite8 (\r
47; UINT16 Port, // rcx\r
48; UINT32 Data // rdx\r
49; )\r
50;------------------------------------------------------------------------------\r
51CpuIoWrite8 PROC PUBLIC\r
52 mov eax, edx\r
53 mov dx, cx\r
54 out dx, al\r
55 ret\r
56CpuIoWrite8 ENDP\r
57\r
58;------------------------------------------------------------------------------\r
59; UINT16\r
60; CpuIoRead16 (\r
61; UINT16 Port // rcx\r
62; )\r
63;------------------------------------------------------------------------------\r
64CpuIoRead16 PROC PUBLIC\r
65 xor eax, eax\r
66 mov dx, cx\r
67 in ax, dx\r
68 ret\r
69CpuIoRead16 ENDP\r
70\r
71;------------------------------------------------------------------------------\r
72; VOID\r
73; CpuIoWrite16 (\r
74; UINT16 Port, // rcx\r
75; UINT32 Data // rdx\r
76; )\r
77;------------------------------------------------------------------------------\r
78CpuIoWrite16 PROC PUBLIC\r
79 mov eax, edx\r
80 mov dx, cx\r
81 out dx, ax\r
82 ret\r
83CpuIoWrite16 ENDP\r
84\r
85;------------------------------------------------------------------------------\r
86; UINT32\r
87; CpuIoRead32 (\r
88; UINT16 Port // rcx\r
89; )\r
90;------------------------------------------------------------------------------\r
91CpuIoRead32 PROC PUBLIC\r
92 mov dx, cx\r
93 in eax, dx\r
94 ret\r
95CpuIoRead32 ENDP\r
96\r
97;------------------------------------------------------------------------------\r
98; VOID\r
99; CpuIoWrite32 (\r
100; UINT16 Port, // rcx\r
101; UINT32 Data // rdx\r
102; )\r
103;------------------------------------------------------------------------------\r
104CpuIoWrite32 PROC PUBLIC\r
105 mov eax, edx\r
106 mov dx, cx\r
107 out dx, eax\r
108 ret\r
109CpuIoWrite32 ENDP\r
110\r
111END\r