]> git.proxmox.com Git - mirror_edk2.git/blob - IntelFrameworkModulePkg/Bus/Isa/IsaBusDxe/InternalIsaIo.h
Remove CommonHeader.h from IsaBusDxe.
[mirror_edk2.git] / IntelFrameworkModulePkg / Bus / Isa / IsaBusDxe / InternalIsaIo.h
1 /*++
2
3 Copyright (c) 2006 - 2007, Intel Corporation<BR>
4 All rights reserved. This program and the accompanying materials
5 are licensed and made available under the terms and conditions of the BSD License
6 which accompanies this distribution. The full text of the license may be found at
7 http://opensource.org/licenses/bsd-license.php
8
9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
11
12 Module Name:
13
14 IsaIo.h
15
16 Abstract:
17
18 The header file for EFI_ISA_IO protocol implementation.
19
20 --*/
21
22 #ifndef _EFI_ISA_IO_LOCAL_H
23 #define _EFI_ISA_IO_LOCAL_H
24
25 #include "InternalIsaBus.h"
26
27 //
28 // ISA I/O Support Function Prototypes
29 //
30
31 EFI_STATUS
32 IsaIoVerifyAccess (
33 IN ISA_IO_DEVICE *IsaIoDevice,
34 IN ISA_ACCESS_TYPE Type,
35 IN EFI_ISA_IO_PROTOCOL_WIDTH Width,
36 IN UINTN Count,
37 IN OUT UINT32 *Offset
38 );
39
40 EFI_STATUS
41 EFIAPI
42 IsaIoIoRead (
43 IN EFI_ISA_IO_PROTOCOL *This,
44 IN EFI_ISA_IO_PROTOCOL_WIDTH Width,
45 IN UINT32 Offset,
46 IN UINTN Count,
47 IN OUT VOID *Buffer
48 );
49
50 EFI_STATUS
51 EFIAPI
52 IsaIoIoWrite (
53 IN EFI_ISA_IO_PROTOCOL *This,
54 IN EFI_ISA_IO_PROTOCOL_WIDTH Width,
55 IN UINT32 Offset,
56 IN UINTN Count,
57 IN OUT VOID *Buffer
58 );
59
60 EFI_STATUS
61 EFIAPI
62 IsaIoMap (
63 IN EFI_ISA_IO_PROTOCOL *This,
64 IN EFI_ISA_IO_PROTOCOL_OPERATION Operation,
65 IN UINT8 ChannelNumber OPTIONAL,
66 IN UINT32 ChannelAttributes,
67 IN VOID *HostAddress,
68 IN OUT UINTN *NumberOfBytes,
69 OUT EFI_PHYSICAL_ADDRESS *DeviceAddress,
70 OUT VOID **Mapping
71 );
72
73 EFI_STATUS
74 EFIAPI
75 IsaIoUnmap (
76 IN EFI_ISA_IO_PROTOCOL *This,
77 IN VOID *Mapping
78 );
79
80 EFI_STATUS
81 EFIAPI
82 IsaIoFlush (
83 IN EFI_ISA_IO_PROTOCOL *This
84 );
85
86 EFI_STATUS
87 ReportErrorStatusCode (
88 EFI_STATUS_CODE_VALUE code
89 );
90
91 EFI_STATUS
92 WriteDmaPort (
93 IN EFI_ISA_IO_PROTOCOL *This,
94 IN UINT32 AddrOffset,
95 IN UINT32 PageOffset,
96 IN UINT32 CountOffset,
97 IN UINT32 BaseAddress,
98 IN UINT16 Count
99 );
100
101 EFI_STATUS
102 WritePort (
103 IN EFI_ISA_IO_PROTOCOL *This,
104 IN UINT32 Offset,
105 IN UINT8 Value
106 );
107
108 EFI_STATUS
109 EFIAPI
110 IsaIoMemRead (
111 IN EFI_ISA_IO_PROTOCOL *This,
112 IN EFI_ISA_IO_PROTOCOL_WIDTH Width,
113 IN UINT32 Offset,
114 IN UINTN Count,
115 IN OUT VOID *Buffer
116 );
117
118
119 EFI_STATUS
120 EFIAPI
121 IsaIoMemWrite (
122 IN EFI_ISA_IO_PROTOCOL *This,
123 IN EFI_ISA_IO_PROTOCOL_WIDTH Width,
124 IN UINT32 Offset,
125 IN UINTN Count,
126 IN OUT VOID *Buffer
127 );
128
129 EFI_STATUS
130 EFIAPI
131 IsaIoCopyMem (
132 IN EFI_ISA_IO_PROTOCOL *This,
133 IN EFI_ISA_IO_PROTOCOL_WIDTH Width,
134 IN UINT32 DestOffset,
135 IN UINT32 SrcOffset,
136 IN UINTN Count
137 );
138
139 EFI_STATUS
140 EFIAPI
141 IsaIoAllocateBuffer (
142 IN EFI_ISA_IO_PROTOCOL *This,
143 IN EFI_ALLOCATE_TYPE Type,
144 IN EFI_MEMORY_TYPE MemoryType,
145 IN UINTN Pages,
146 OUT VOID **HostAddress,
147 IN UINT64 Attributes
148 );
149
150 EFI_STATUS
151 EFIAPI
152 IsaIoFreeBuffer (
153 IN EFI_ISA_IO_PROTOCOL *This,
154 IN UINTN Pages,
155 IN VOID *HostAddress
156 );
157
158 #endif