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