1 /******************************************************************************
2  *
3  * Module Name: aslstubs - Stubs used to link to Aml interpreter
4  *
5  *****************************************************************************/
6 
7 /*
8  * Copyright (C) 2000 - 2016, 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 #include "acparser.h"
51 
52 #define _COMPONENT          ACPI_COMPILER
53         ACPI_MODULE_NAME    ("aslstubs")
54 
55 
56 /*
57  * Stubs to simplify linkage to the ACPICA core subsystem.
58  * Things like Events, Global Lock, etc. are not used
59  * by the compiler, so they are stubbed out here.
60  */
61 void
62 AcpiNsExecModuleCodeList (
63     void)
64 {
65 }
66 
67 ACPI_STATUS
68 AcpiNsInitializeObjects (
69     void)
70 {
71     return (AE_OK);
72 }
73 
74 ACPI_STATUS
75 AcpiPsExecuteTable (
76     ACPI_EVALUATE_INFO      *Info)
77 {
78     return (AE_OK);
79 }
80 
81 ACPI_STATUS
82 AcpiHwReadPort (
83     ACPI_IO_ADDRESS         Address,
84     UINT32                  *Value,
85     UINT32                  Width)
86 {
87     return (AE_OK);
88 }
89 
90 ACPI_STATUS
91 AcpiHwWritePort (
92     ACPI_IO_ADDRESS         Address,
93     UINT32                  Value,
94     UINT32                  Width)
95 {
96     return (AE_OK);
97 }
98 
99 ACPI_STATUS
100 AcpiDsMethodError (
101     ACPI_STATUS             Status,
102     ACPI_WALK_STATE         *WalkState)
103 {
104     return (Status);
105 }
106 
107 ACPI_STATUS
108 AcpiDsMethodDataGetValue (
109     UINT8                   Type,
110     UINT32                  Index,
111     ACPI_WALK_STATE         *WalkState,
112     ACPI_OPERAND_OBJECT     **DestDesc)
113 {
114     return (AE_OK);
115 }
116 
117 ACPI_STATUS
118 AcpiDsMethodDataGetNode (
119     UINT8                   Type,
120     UINT32                  Index,
121     ACPI_WALK_STATE         *WalkState,
122     ACPI_NAMESPACE_NODE     **Node)
123 {
124     return (AE_OK);
125 }
126 
127 ACPI_STATUS
128 AcpiDsStoreObjectToLocal (
129     UINT8                   Type,
130     UINT32                  Index,
131     ACPI_OPERAND_OBJECT     *SrcDesc,
132     ACPI_WALK_STATE         *WalkState)
133 {
134     return (AE_OK);
135 }
136 
137 ACPI_STATUS
138 AcpiEvInstallRegionHandlers (
139     void)
140 {
141     return (AE_OK);
142 }
143 
144 ACPI_STATUS
145 AcpiEvQueueNotifyRequest (
146     ACPI_NAMESPACE_NODE     *Node,
147     UINT32                  NotifyValue)
148 {
149     return (AE_OK);
150 }
151 
152 BOOLEAN
153 AcpiEvIsNotifyObject (
154     ACPI_NAMESPACE_NODE     *Node)
155 {
156     return (FALSE);
157 }
158 
159 #if (!ACPI_REDUCED_HARDWARE)
160 ACPI_STATUS
161 AcpiEvDeleteGpeBlock (
162     ACPI_GPE_BLOCK_INFO     *GpeBlock)
163 {
164     return (AE_OK);
165 }
166 
167 void
168 AcpiEvUpdateGpes (
169     ACPI_OWNER_ID           TableOwnerId)
170 {
171     return;
172 }
173 
174 ACPI_STATUS
175 AcpiEvAcquireGlobalLock (
176     UINT16                  Timeout)
177 {
178     return (AE_OK);
179 }
180 
181 ACPI_STATUS
182 AcpiEvReleaseGlobalLock (
183     void)
184 {
185     return (AE_OK);
186 }
187 #endif /* !ACPI_REDUCED_HARDWARE */
188 
189 ACPI_STATUS
190 AcpiEvInitializeRegion (
191     ACPI_OPERAND_OBJECT     *RegionObj,
192     BOOLEAN                 AcpiNsLocked)
193 {
194     return (AE_OK);
195 }
196 
197 ACPI_STATUS
198 AcpiExReadDataFromField (
199     ACPI_WALK_STATE         *WalkState,
200     ACPI_OPERAND_OBJECT     *ObjDesc,
201     ACPI_OPERAND_OBJECT     **RetBufferDesc)
202 {
203     return (AE_SUPPORT);
204 }
205 
206 ACPI_STATUS
207 AcpiExWriteDataToField (
208     ACPI_OPERAND_OBJECT     *SourceDesc,
209     ACPI_OPERAND_OBJECT     *ObjDesc,
210     ACPI_OPERAND_OBJECT     **ResultDesc)
211 {
212     return (AE_SUPPORT);
213 }
214 
215 ACPI_STATUS
216 AcpiExLoadTableOp (
217     ACPI_WALK_STATE         *WalkState,
218     ACPI_OPERAND_OBJECT     **ReturnDesc)
219 {
220     return (AE_SUPPORT);
221 }
222 
223 ACPI_STATUS
224 AcpiExUnloadTable (
225     ACPI_OPERAND_OBJECT     *DdbHandle)
226 {
227     return (AE_SUPPORT);
228 }
229 
230 ACPI_STATUS
231 AcpiExLoadOp (
232     ACPI_OPERAND_OBJECT     *ObjDesc,
233     ACPI_OPERAND_OBJECT     *Target,
234     ACPI_WALK_STATE         *WalkState)
235 {
236     return (AE_SUPPORT);
237 }
238 
239 void
240 AcpiExDoDebugObject (
241     ACPI_OPERAND_OBJECT     *SourceDesc,
242     UINT32                  Level,
243     UINT32                  Index)
244 {
245     return;
246 }
247 
248 void
249 AcpiExStartTraceMethod (
250     ACPI_NAMESPACE_NODE     *MethodNode,
251     ACPI_OPERAND_OBJECT     *ObjDesc,
252     ACPI_WALK_STATE         *WalkState)
253 {
254     return;
255 }
256 
257 void
258 AcpiExStopTraceMethod (
259     ACPI_NAMESPACE_NODE     *MethodNode,
260     ACPI_OPERAND_OBJECT     *ObjDesc,
261     ACPI_WALK_STATE         *WalkState)
262 {
263     return;
264 }
265 
266 void
267 AcpiExStartTraceOpcode (
268     ACPI_PARSE_OBJECT       *Op,
269     ACPI_WALK_STATE         *WalkState)
270 {
271     return;
272 }
273 
274 void
275 AcpiExStopTraceOpcode (
276     ACPI_PARSE_OBJECT       *Op,
277     ACPI_WALK_STATE         *WalkState)
278 
279 {
280     return;
281 }
282 
283 void
284 AcpiExTracePoint (
285     ACPI_TRACE_EVENT_TYPE   Type,
286     BOOLEAN                 Begin,
287     UINT8                   *Aml,
288     char                    *Pathname)
289 {
290     return;
291 }
292 
293 ACPI_STATUS
294 AcpiTbFindTable (
295     char                    *Signature,
296     char                    *OemId,
297     char                    *OemTableId,
298     UINT32                  *TableIndex)
299 {
300     return (AE_SUPPORT);
301 }
302 
303 ACPI_STATUS
304 AcpiNsLoadTable (
305     UINT32                  TableIndex,
306     ACPI_NAMESPACE_NODE     *Node)
307 {
308     return (AE_NOT_IMPLEMENTED);
309 }
310 
311 ACPI_STATUS
312 AcpiDsRestartControlMethod (
313     ACPI_WALK_STATE         *WalkState,
314     ACPI_OPERAND_OBJECT     *ReturnDesc)
315 {
316     return (AE_OK);
317 }
318 
319 void
320 AcpiDsTerminateControlMethod (
321     ACPI_OPERAND_OBJECT     *MethodDesc,
322     ACPI_WALK_STATE         *WalkState)
323 {
324     return;
325 }
326 
327 ACPI_STATUS
328 AcpiDsCallControlMethod (
329     ACPI_THREAD_STATE       *Thread,
330     ACPI_WALK_STATE         *WalkState,
331     ACPI_PARSE_OBJECT       *Op)
332 {
333     return (AE_OK);
334 }
335 
336 ACPI_STATUS
337 AcpiDsMethodDataInitArgs (
338     ACPI_OPERAND_OBJECT     **Params,
339     UINT32                  MaxParamCount,
340     ACPI_WALK_STATE         *WalkState)
341 {
342     return (AE_OK);
343 }
344