1 /****************************************************************************** 2 * 3 * Module Name: aslstubs - Stubs used to link to Aml interpreter 4 * 5 *****************************************************************************/ 6 7 /* 8 * Copyright (C) 2000 - 2014, 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