aslstubs.c revision 1.1.1.4 1 /******************************************************************************
2 *
3 * Module Name: aslstubs - Stubs used to link to Aml interpreter
4 *
5 *****************************************************************************/
6
7 /*
8 * Copyright (C) 2000 - 2013, Intel Corp.
9 * All rights reserved.
10 *
11 * Redistribution and use in source and binary forms, with or without
12 * modification, are permitted provided that the following conditions
13 * are met:
14 * 1. Redistributions of source code must retain the above copyright
15 * notice, this list of conditions, and the following disclaimer,
16 * without modification.
17 * 2. Redistributions in binary form must reproduce at minimum a disclaimer
18 * substantially similar to the "NO WARRANTY" disclaimer below
19 * ("Disclaimer") and any redistribution must be conditioned upon
20 * including a substantially similar Disclaimer requirement for further
21 * binary redistribution.
22 * 3. Neither the names of the above-listed copyright holders nor the names
23 * of any contributors may be used to endorse or promote products derived
24 * from this software without specific prior written permission.
25 *
26 * Alternatively, this software may be distributed under the terms of the
27 * GNU General Public License ("GPL") version 2 as published by the Free
28 * Software Foundation.
29 *
30 * NO WARRANTY
31 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
32 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
33 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR
34 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
35 * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
36 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
37 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
38 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
39 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
40 * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
41 * POSSIBILITY OF SUCH DAMAGES.
42 */
43
44 #include "aslcompiler.h"
45 #include "acdispat.h"
46 #include "actables.h"
47 #include "acevents.h"
48 #include "acinterp.h"
49 #include "acnamesp.h"
50
51 #define _COMPONENT ACPI_COMPILER
52 ACPI_MODULE_NAME ("aslstubs")
53
54
55 /*
56 * Stubs to simplify linkage to the ACPI CA core subsystem.
57 * Things like Events, Global Lock, etc. are not used
58 * by the compiler, so they are stubbed out here.
59 */
60 ACPI_PHYSICAL_ADDRESS
61 AeLocalGetRootPointer (
62 void)
63 {
64 return (0);
65 }
66
67 void
68 AcpiNsExecModuleCodeList (
69 void)
70 {
71 }
72
73 ACPI_STATUS
74 AcpiHwReadPort (
75 ACPI_IO_ADDRESS Address,
76 UINT32 *Value,
77 UINT32 Width)
78 {
79 return (AE_OK);
80 }
81
82 ACPI_STATUS
83 AcpiHwWritePort (
84 ACPI_IO_ADDRESS Address,
85 UINT32 Value,
86 UINT32 Width)
87 {
88 return (AE_OK);
89 }
90
91 ACPI_STATUS
92 AcpiDsMethodError (
93 ACPI_STATUS Status,
94 ACPI_WALK_STATE *WalkState)
95 {
96 return (Status);
97 }
98
99 ACPI_STATUS
100 AcpiDsMethodDataGetValue (
101 UINT8 Type,
102 UINT32 Index,
103 ACPI_WALK_STATE *WalkState,
104 ACPI_OPERAND_OBJECT **DestDesc)
105 {
106 return (AE_OK);
107 }
108
109 ACPI_STATUS
110 AcpiDsMethodDataGetNode (
111 UINT8 Type,
112 UINT32 Index,
113 ACPI_WALK_STATE *WalkState,
114 ACPI_NAMESPACE_NODE **Node)
115 {
116 return (AE_OK);
117 }
118
119 ACPI_STATUS
120 AcpiDsStoreObjectToLocal (
121 UINT8 Type,
122 UINT32 Index,
123 ACPI_OPERAND_OBJECT *SrcDesc,
124 ACPI_WALK_STATE *WalkState)
125 {
126 return (AE_OK);
127 }
128
129 ACPI_STATUS
130 AcpiEvQueueNotifyRequest (
131 ACPI_NAMESPACE_NODE *Node,
132 UINT32 NotifyValue)
133 {
134 return (AE_OK);
135 }
136
137 BOOLEAN
138 AcpiEvIsNotifyObject (
139 ACPI_NAMESPACE_NODE *Node)
140 {
141 return (FALSE);
142 }
143
144 #if (!ACPI_REDUCED_HARDWARE)
145 ACPI_STATUS
146 AcpiEvDeleteGpeBlock (
147 ACPI_GPE_BLOCK_INFO *GpeBlock)
148 {
149 return (AE_OK);
150 }
151
152 ACPI_STATUS
153 AcpiEvAcquireGlobalLock (
154 UINT16 Timeout)
155 {
156 return (AE_OK);
157 }
158
159 ACPI_STATUS
160 AcpiEvReleaseGlobalLock (
161 void)
162 {
163 return (AE_OK);
164 }
165 #endif /* !ACPI_REDUCED_HARDWARE */
166
167 ACPI_STATUS
168 AcpiEvInitializeRegion (
169 ACPI_OPERAND_OBJECT *RegionObj,
170 BOOLEAN AcpiNsLocked)
171 {
172 return (AE_OK);
173 }
174
175 void
176 AcpiExDoDebugObject (
177 ACPI_OPERAND_OBJECT *SourceDesc,
178 UINT32 Level,
179 UINT32 Index)
180 {
181 return;
182 }
183
184 ACPI_STATUS
185 AcpiExReadDataFromField (
186 ACPI_WALK_STATE *WalkState,
187 ACPI_OPERAND_OBJECT *ObjDesc,
188 ACPI_OPERAND_OBJECT **RetBufferDesc)
189 {
190 return (AE_SUPPORT);
191 }
192
193 ACPI_STATUS
194 AcpiExWriteDataToField (
195 ACPI_OPERAND_OBJECT *SourceDesc,
196 ACPI_OPERAND_OBJECT *ObjDesc,
197 ACPI_OPERAND_OBJECT **ResultDesc)
198 {
199 return (AE_SUPPORT);
200 }
201
202 ACPI_STATUS
203 AcpiExLoadTableOp (
204 ACPI_WALK_STATE *WalkState,
205 ACPI_OPERAND_OBJECT **ReturnDesc)
206 {
207 return (AE_SUPPORT);
208 }
209
210 ACPI_STATUS
211 AcpiExUnloadTable (
212 ACPI_OPERAND_OBJECT *DdbHandle)
213 {
214 return (AE_SUPPORT);
215 }
216
217 ACPI_STATUS
218 AcpiExLoadOp (
219 ACPI_OPERAND_OBJECT *ObjDesc,
220 ACPI_OPERAND_OBJECT *Target,
221 ACPI_WALK_STATE *WalkState)
222 {
223 return (AE_SUPPORT);
224 }
225
226 ACPI_STATUS
227 AcpiTbFindTable (
228 char *Signature,
229 char *OemId,
230 char *OemTableId,
231 UINT32 *TableIndex)
232 {
233 return (AE_SUPPORT);
234 }
235
236 /* OSL interfaces */
237
238 ACPI_THREAD_ID
239 AcpiOsGetThreadId (
240 void)
241 {
242 return (1);
243 }
244
245 ACPI_STATUS
246 AcpiOsExecute (
247 ACPI_EXECUTE_TYPE Type,
248 ACPI_OSD_EXEC_CALLBACK Function,
249 void *Context)
250 {
251 return (AE_SUPPORT);
252 }
253