]> git.proxmox.com Git - mirror_edk2.git/blame - PcAtChipsetPkg/PciHostBridgeDxe/Ia32/IoFifo.asm
MdePkg: Add BootManagerPolicy protocol definition.
[mirror_edk2.git] / PcAtChipsetPkg / PciHostBridgeDxe / Ia32 / IoFifo.asm
CommitLineData
1fd376d9 1;------------------------------------------------------------------------------\r
2;\r
3; Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.<BR>\r
4; This program and the accompanying materials\r
5; are licensed and made available under the terms and conditions of the BSD License\r
6; which accompanies this distribution. The full text of the license may be found at\r
7; http://opensource.org/licenses/bsd-license.php.\r
8;\r
9; THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
10; WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
11;\r
12;------------------------------------------------------------------------------\r
13\r
14 .586P\r
15 .model flat,C\r
16 .code\r
17\r
18;------------------------------------------------------------------------------\r
19; VOID\r
20; EFIAPI\r
21; IoReadFifo8 (\r
22; IN UINTN Port,\r
23; IN UINTN Size,\r
24; IN VOID *Buffer\r
25; );\r
26;------------------------------------------------------------------------------\r
27IoReadFifo8 PROC\r
28 push edi\r
29 cld\r
30 mov dx, [esp + 8]\r
31 mov ecx, [esp + 12]\r
32 mov edi, [esp + 16]\r
33rep insb\r
34 pop edi\r
35 ret\r
36IoReadFifo8 ENDP\r
37\r
38;------------------------------------------------------------------------------\r
39; VOID\r
40; EFIAPI\r
41; IoReadFifo16 (\r
42; IN UINTN Port,\r
43; IN UINTN Size,\r
44; IN VOID *Buffer\r
45; );\r
46;------------------------------------------------------------------------------\r
47IoReadFifo16 PROC\r
48 push edi\r
49 cld\r
50 mov dx, [esp + 8]\r
51 mov ecx, [esp + 12]\r
52 mov edi, [esp + 16]\r
53rep insw\r
54 pop edi\r
55 ret\r
56IoReadFifo16 ENDP\r
57\r
58;------------------------------------------------------------------------------\r
59; VOID\r
60; EFIAPI\r
61; IoReadFifo32 (\r
62; IN UINTN Port,\r
63; IN UINTN Size,\r
64; IN VOID *Buffer\r
65; );\r
66;------------------------------------------------------------------------------\r
67IoReadFifo32 PROC\r
68 push edi\r
69 cld\r
70 mov dx, [esp + 8]\r
71 mov ecx, [esp + 12]\r
72 mov edi, [esp + 16]\r
73rep insd\r
74 pop edi\r
75 ret\r
76IoReadFifo32 ENDP\r
77\r
78;------------------------------------------------------------------------------\r
79; VOID\r
80; EFIAPI\r
81; IoWriteFifo8 (\r
82; IN UINTN Port,\r
83; IN UINTN Size,\r
84; IN VOID *Buffer\r
85; );\r
86;------------------------------------------------------------------------------\r
87IoWriteFifo8 PROC\r
88 push esi\r
89 cld\r
90 mov dx, [esp + 8]\r
91 mov ecx, [esp + 12]\r
92 mov esi, [esp + 16]\r
93rep outsb\r
94 pop esi\r
95 ret\r
96IoWriteFifo8 ENDP\r
97\r
98;------------------------------------------------------------------------------\r
99; VOID\r
100; EFIAPI\r
101; IoWriteFifo16 (\r
102; IN UINTN Port,\r
103; IN UINTN Size,\r
104; IN VOID *Buffer\r
105; );\r
106;------------------------------------------------------------------------------\r
107IoWriteFifo16 PROC\r
108 push esi\r
109 cld\r
110 mov dx, [esp + 8]\r
111 mov ecx, [esp + 12]\r
112 mov esi, [esp + 16]\r
113rep outsw\r
114 pop esi\r
115 ret\r
116IoWriteFifo16 ENDP\r
117\r
118;------------------------------------------------------------------------------\r
119; VOID\r
120; EFIAPI\r
121; IoWriteFifo32 (\r
122; IN UINTN Port,\r
123; IN UINTN Size,\r
124; IN VOID *Buffer\r
125; );\r
126;------------------------------------------------------------------------------\r
127IoWriteFifo32 PROC\r
128 push esi\r
129 cld\r
130 mov dx, [esp + 8]\r
131 mov ecx, [esp + 12]\r
132 mov esi, [esp + 16]\r
133rep outsd\r
134 pop esi\r
135 ret\r
136IoWriteFifo32 ENDP\r
137\r
138 END\r
139\r