]> git.proxmox.com Git - mirror_edk2.git/blame - IntelFrameworkModulePkg/Bus/Isa/IsaBusDxe/InternalIsaIo.h
Update License Headers.
[mirror_edk2.git] / IntelFrameworkModulePkg / Bus / Isa / IsaBusDxe / InternalIsaIo.h
CommitLineData
c3902377 1/*++\r
2\r
3e0578d2 3 Copyright (c) 2006 - 2007, Intel Corporation<BR>\r
4 All rights reserved. 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
c3902377 11\r
12Module Name:\r
13\r
14 IsaIo.h\r
15 \r
16Abstract:\r
17 \r
18 The header file for EFI_ISA_IO protocol implementation.\r
19 \r
20--*/\r
21\r
22#ifndef _EFI_ISA_IO_LOCAL_H\r
23#define _EFI_ISA_IO_LOCAL_H\r
24\r
25//\r
26// Include common header file for this module.\r
27//\r
28#include "CommonHeader.h"\r
29\r
30#include "InternalIsaBus.h"\r
31\r
32//\r
33// ISA I/O Support Function Prototypes\r
34//\r
35\r
36EFI_STATUS\r
37IsaIoVerifyAccess (\r
38 IN ISA_IO_DEVICE *IsaIoDevice,\r
39 IN ISA_ACCESS_TYPE Type,\r
40 IN EFI_ISA_IO_PROTOCOL_WIDTH Width,\r
41 IN UINTN Count,\r
42 IN OUT UINT32 *Offset\r
43 );\r
44 \r
45EFI_STATUS\r
46EFIAPI\r
47IsaIoIoRead (\r
48 IN EFI_ISA_IO_PROTOCOL *This,\r
49 IN EFI_ISA_IO_PROTOCOL_WIDTH Width,\r
50 IN UINT32 Offset,\r
51 IN UINTN Count,\r
52 IN OUT VOID *Buffer\r
53 );\r
54\r
55EFI_STATUS\r
56EFIAPI\r
57IsaIoIoWrite (\r
58 IN EFI_ISA_IO_PROTOCOL *This,\r
59 IN EFI_ISA_IO_PROTOCOL_WIDTH Width,\r
60 IN UINT32 Offset,\r
61 IN UINTN Count,\r
62 IN OUT VOID *Buffer\r
63 );\r
64\r
65EFI_STATUS\r
66EFIAPI\r
67IsaIoMap (\r
68 IN EFI_ISA_IO_PROTOCOL *This,\r
69 IN EFI_ISA_IO_PROTOCOL_OPERATION Operation,\r
70 IN UINT8 ChannelNumber OPTIONAL,\r
71 IN UINT32 ChannelAttributes,\r
72 IN VOID *HostAddress,\r
73 IN OUT UINTN *NumberOfBytes,\r
74 OUT EFI_PHYSICAL_ADDRESS *DeviceAddress,\r
75 OUT VOID **Mapping\r
76 );\r
77\r
78EFI_STATUS\r
79EFIAPI\r
80IsaIoUnmap (\r
81 IN EFI_ISA_IO_PROTOCOL *This,\r
82 IN VOID *Mapping\r
83 );\r
84\r
85EFI_STATUS\r
86EFIAPI\r
87IsaIoFlush (\r
88 IN EFI_ISA_IO_PROTOCOL *This\r
89 );\r
90\r
91EFI_STATUS\r
92ReportErrorStatusCode (\r
93 EFI_STATUS_CODE_VALUE code\r
94 );\r
95\r
96EFI_STATUS\r
97WriteDmaPort (\r
98 IN EFI_ISA_IO_PROTOCOL *This,\r
99 IN UINT32 AddrOffset,\r
100 IN UINT32 PageOffset,\r
101 IN UINT32 CountOffset,\r
102 IN UINT32 BaseAddress,\r
103 IN UINT16 Count\r
104 );\r
105\r
106EFI_STATUS\r
107WritePort (\r
108 IN EFI_ISA_IO_PROTOCOL *This,\r
109 IN UINT32 Offset,\r
110 IN UINT8 Value\r
111 ); \r
112\r
113EFI_STATUS\r
114EFIAPI\r
115IsaIoMemRead (\r
116 IN EFI_ISA_IO_PROTOCOL *This,\r
117 IN EFI_ISA_IO_PROTOCOL_WIDTH Width,\r
118 IN UINT32 Offset,\r
119 IN UINTN Count,\r
120 IN OUT VOID *Buffer\r
121 );\r
122\r
123\r
124EFI_STATUS\r
125EFIAPI\r
126IsaIoMemWrite (\r
127 IN EFI_ISA_IO_PROTOCOL *This,\r
128 IN EFI_ISA_IO_PROTOCOL_WIDTH Width,\r
129 IN UINT32 Offset,\r
130 IN UINTN Count,\r
131 IN OUT VOID *Buffer\r
132 );\r
133\r
134EFI_STATUS\r
135EFIAPI\r
136IsaIoCopyMem (\r
137 IN EFI_ISA_IO_PROTOCOL *This,\r
138 IN EFI_ISA_IO_PROTOCOL_WIDTH Width,\r
139 IN UINT32 DestOffset,\r
140 IN UINT32 SrcOffset,\r
141 IN UINTN Count\r
142 );\r
143\r
144EFI_STATUS\r
145EFIAPI\r
146IsaIoAllocateBuffer (\r
147 IN EFI_ISA_IO_PROTOCOL *This,\r
148 IN EFI_ALLOCATE_TYPE Type,\r
149 IN EFI_MEMORY_TYPE MemoryType,\r
150 IN UINTN Pages,\r
151 OUT VOID **HostAddress,\r
152 IN UINT64 Attributes\r
153 );\r
154\r
155EFI_STATUS\r
156EFIAPI\r
157IsaIoFreeBuffer (\r
158 IN EFI_ISA_IO_PROTOCOL *This,\r
159 IN UINTN Pages,\r
160 IN VOID *HostAddress\r
161 );\r
162\r
163#endif\r