acresrc.h revision 322877
1267400Semaste/****************************************************************************** 2267400Semaste * 3267400Semaste * Name: acresrc.h - Resource Manager function prototypes 4267400Semaste * 5267400Semaste *****************************************************************************/ 6267400Semaste 7267400Semaste/****************************************************************************** 8267400Semaste * 9267400Semaste * 1. Copyright Notice 10267400Semaste * 11267400Semaste * Some or all of this work - Copyright (c) 1999 - 2017, Intel Corp. 12267400Semaste * All rights reserved. 13267400Semaste * 14267400Semaste * 2. License 15267400Semaste * 16267400Semaste * 2.1. This is your license from Intel Corp. under its intellectual property 17267400Semaste * rights. You may have additional license terms from the party that provided 18267400Semaste * you this software, covering your right to use that party's intellectual 19267400Semaste * property rights. 20267400Semaste * 21267400Semaste * 2.2. Intel grants, free of charge, to any person ("Licensee") obtaining a 22267400Semaste * copy of the source code appearing in this file ("Covered Code") an 23267400Semaste * irrevocable, perpetual, worldwide license under Intel's copyrights in the 24267400Semaste * base code distributed originally by Intel ("Original Intel Code") to copy, 25267400Semaste 26267400Semaste * make derivatives, distribute, use and display any portion of the Covered 27267400Semaste * Code in any form, with the right to sublicense such rights; and 28267400Semaste * 29267400Semaste * 2.3. Intel grants Licensee a non-exclusive and non-transferable patent 30267400Semaste * license (with the right to sublicense), under only those claims of Intel 31267400Semaste * patents that are infringed by the Original Intel Code, to make, use, sell, 32267400Semaste * offer to sell, and import the Covered Code and derivative works thereof 33267400Semaste * solely to the minimum extent necessary to exercise the above copyright 34267400Semaste * license, and in no event shall the patent license extend to any additions 35267400Semaste * to or modifications of the Original Intel Code. No other license or right 36267400Semaste * is granted directly or by implication, estoppel or otherwise; 37267400Semaste * 38267400Semaste * The above copyright and patent license is granted only if the following 39267400Semaste * conditions are met: 40267400Semaste * 41267400Semaste * 3. Conditions 42267400Semaste * 43267400Semaste * 3.1. Redistribution of Source with Rights to Further Distribute Source. 44267400Semaste * Redistribution of source code of any substantial portion of the Covered 45267400Semaste * Code or modification with rights to further distribute source must include 46267400Semaste * the above Copyright Notice, the above License, this list of Conditions, 47267400Semaste * and the following Disclaimer and Export Compliance provision. In addition, 48267400Semaste * Licensee must cause all Covered Code to which Licensee contributes to 49267400Semaste * contain a file documenting the changes Licensee made to create that Covered 50267400Semaste * Code and the date of any change. Licensee must include in that file the 51267400Semaste * documentation of any changes made by any predecessor Licensee. Licensee 52267400Semaste * must include a prominent statement that the modification is derived, 53267400Semaste * directly or indirectly, from Original Intel Code. 54267400Semaste * 55267400Semaste * 3.2. Redistribution of Source with no Rights to Further Distribute Source. 56267400Semaste * Redistribution of source code of any substantial portion of the Covered 57267400Semaste * Code or modification without rights to further distribute source must 58267400Semaste * include the following Disclaimer and Export Compliance provision in the 59267400Semaste * documentation and/or other materials provided with distribution. In 60267400Semaste * addition, Licensee may not authorize further sublicense of source of any 61267400Semaste * portion of the Covered Code, and must include terms to the effect that the 62267400Semaste * license from Licensee to its licensee is limited to the intellectual 63267400Semaste * property embodied in the software Licensee provides to its licensee, and 64267400Semaste * not to intellectual property embodied in modifications its licensee may 65267400Semaste * make. 66267400Semaste * 67267400Semaste * 3.3. Redistribution of Executable. Redistribution in executable form of any 68267400Semaste * substantial portion of the Covered Code or modification must reproduce the 69267400Semaste * above Copyright Notice, and the following Disclaimer and Export Compliance 70267400Semaste * provision in the documentation and/or other materials provided with the 71267400Semaste * distribution. 72267400Semaste * 73267400Semaste * 3.4. Intel retains all right, title, and interest in and to the Original 74267400Semaste * Intel Code. 75267400Semaste * 76267400Semaste * 3.5. Neither the name Intel nor any other trademark owned or controlled by 77267400Semaste * Intel shall be used in advertising or otherwise to promote the sale, use or 78267400Semaste * other dealings in products derived from or relating to the Covered Code 79267400Semaste * without prior written authorization from Intel. 80267400Semaste * 81267400Semaste * 4. Disclaimer and Export Compliance 82267400Semaste * 83267400Semaste * 4.1. INTEL MAKES NO WARRANTY OF ANY KIND REGARDING ANY SOFTWARE PROVIDED 84267400Semaste * HERE. ANY SOFTWARE ORIGINATING FROM INTEL OR DERIVED FROM INTEL SOFTWARE 85267400Semaste * IS PROVIDED "AS IS," AND INTEL WILL NOT PROVIDE ANY SUPPORT, ASSISTANCE, 86267400Semaste * INSTALLATION, TRAINING OR OTHER SERVICES. INTEL WILL NOT PROVIDE ANY 87267400Semaste * UPDATES, ENHANCEMENTS OR EXTENSIONS. INTEL SPECIFICALLY DISCLAIMS ANY 88267400Semaste * IMPLIED WARRANTIES OF MERCHANTABILITY, NONINFRINGEMENT AND FITNESS FOR A 89267400Semaste * PARTICULAR PURPOSE. 90267400Semaste * 91267400Semaste * 4.2. IN NO EVENT SHALL INTEL HAVE ANY LIABILITY TO LICENSEE, ITS LICENSEES 92267400Semaste * OR ANY OTHER THIRD PARTY, FOR ANY LOST PROFITS, LOST DATA, LOSS OF USE OR 93267400Semaste * COSTS OF PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, OR FOR ANY INDIRECT, 94267400Semaste * SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THIS AGREEMENT, UNDER ANY 95267400Semaste * CAUSE OF ACTION OR THEORY OF LIABILITY, AND IRRESPECTIVE OF WHETHER INTEL 96267400Semaste * HAS ADVANCE NOTICE OF THE POSSIBILITY OF SUCH DAMAGES. THESE LIMITATIONS 97267400Semaste * SHALL APPLY NOTWITHSTANDING THE FAILURE OF THE ESSENTIAL PURPOSE OF ANY 98267400Semaste * LIMITED REMEDY. 99267400Semaste * 100267400Semaste * 4.3. Licensee shall not export, either directly or indirectly, any of this 101267400Semaste * software or system incorporating such software without first obtaining any 102267400Semaste * required license or other approval from the U. S. Department of Commerce or 103267400Semaste * any other agency or department of the United States Government. In the 104271333Semaste * event Licensee exports any such software from the United States or 105267400Semaste * re-exports any such software from a foreign destination, Licensee shall 106271333Semaste * ensure that the distribution and export/re-export of the software is in 107267400Semaste * compliance with all laws, regulations, orders, or other restrictions of the 108271333Semaste * U.S. Export Administration Regulations. Licensee agrees that neither it nor 109271333Semaste * any of its subsidiaries will export/re-export any technical data, process, 110267400Semaste * software, or service, directly or indirectly, to any country for which the 111267400Semaste * United States government or any agency thereof requires an export license, 112267400Semaste * other governmental approval, or letter of assurance, without first obtaining 113271333Semaste * such license, approval or letter. 114271333Semaste * 115271333Semaste ***************************************************************************** 116267400Semaste * 117267400Semaste * Alternatively, you may choose to be licensed under the terms of the 118267400Semaste * following license: 119271333Semaste * 120271333Semaste * Redistribution and use in source and binary forms, with or without 121267400Semaste * modification, are permitted provided that the following conditions 122267400Semaste * are met: 123267400Semaste * 1. Redistributions of source code must retain the above copyright 124271333Semaste * notice, this list of conditions, and the following disclaimer, 125271333Semaste * without modification. 126267400Semaste * 2. Redistributions in binary form must reproduce at minimum a disclaimer 127267400Semaste * substantially similar to the "NO WARRANTY" disclaimer below 128267400Semaste * ("Disclaimer") and any redistribution must be conditioned upon 129267400Semaste * including a substantially similar Disclaimer requirement for further 130271333Semaste * binary redistribution. 131267400Semaste * 3. Neither the names of the above-listed copyright holders nor the names 132271333Semaste * of any contributors may be used to endorse or promote products derived 133271333Semaste * from this software without specific prior written permission. 134271333Semaste * 135271333Semaste * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 136267400Semaste * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 137267400Semaste * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 138267400Semaste * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 139267400Semaste * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 140271333Semaste * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 141267400Semaste * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 142271333Semaste * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 143271333Semaste * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 144271333Semaste * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 145271333Semaste * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 146271333Semaste * 147271333Semaste * Alternatively, you may choose to be licensed under the terms of the 148271333Semaste * GNU General Public License ("GPL") version 2 as published by the Free 149267400Semaste * Software Foundation. 150271333Semaste * 151271333Semaste *****************************************************************************/ 152271333Semaste 153271333Semaste#ifndef __ACRESRC_H__ 154267400Semaste#define __ACRESRC_H__ 155271333Semaste 156271333Semaste/* Need the AML resource descriptor structs */ 157271333Semaste 158271333Semaste#include <contrib/dev/acpica/include/amlresrc.h> 159271333Semaste 160267400Semaste 161271333Semaste/* 162271333Semaste * If possible, pack the following structures to byte alignment, since we 163267400Semaste * don't care about performance for debug output. Two cases where we cannot 164267400Semaste * pack the structures: 165267400Semaste * 166267400Semaste * 1) Hardware does not support misaligned memory transfers 167271333Semaste * 2) Compiler does not support pointers within packed structures 168267400Semaste */ 169267400Semaste#if (!defined(ACPI_MISALIGNMENT_NOT_SUPPORTED) && !defined(ACPI_PACKED_POINTERS_NOT_SUPPORTED)) 170267400Semaste#pragma pack(1) 171267400Semaste#endif 172267400Semaste 173267400Semaste/* 174267400Semaste * Individual entry for the resource conversion tables 175267400Semaste */ 176267400Semastetypedef const struct acpi_rsconvert_info 177267400Semaste{ 178267400Semaste UINT8 Opcode; 179267400Semaste UINT8 ResourceOffset; 180271333Semaste UINT8 AmlOffset; 181267400Semaste UINT8 Value; 182267400Semaste 183267400Semaste} ACPI_RSCONVERT_INFO; 184267400Semaste 185271333Semaste/* Resource conversion opcodes */ 186267400Semaste 187267400Semastetypedef enum 188271333Semaste{ 189267400Semaste ACPI_RSC_INITGET = 0, 190267400Semaste ACPI_RSC_INITSET, 191267400Semaste ACPI_RSC_FLAGINIT, 192267400Semaste ACPI_RSC_1BITFLAG, 193271333Semaste ACPI_RSC_2BITFLAG, 194271333Semaste ACPI_RSC_3BITFLAG, 195267400Semaste ACPI_RSC_ADDRESS, 196271333Semaste ACPI_RSC_BITMASK, 197271333Semaste ACPI_RSC_BITMASK16, 198271333Semaste ACPI_RSC_COUNT, 199271333Semaste ACPI_RSC_COUNT16, 200271333Semaste ACPI_RSC_COUNT_GPIO_PIN, 201271333Semaste ACPI_RSC_COUNT_GPIO_RES, 202271333Semaste ACPI_RSC_COUNT_GPIO_VEN, 203267400Semaste ACPI_RSC_COUNT_SERIAL_RES, 204267400Semaste ACPI_RSC_COUNT_SERIAL_VEN, 205267400Semaste ACPI_RSC_DATA8, 206267400Semaste ACPI_RSC_EXIT_EQ, 207267400Semaste ACPI_RSC_EXIT_LE, 208267400Semaste ACPI_RSC_EXIT_NE, 209267400Semaste ACPI_RSC_LENGTH, 210267400Semaste ACPI_RSC_MOVE_GPIO_PIN, 211267400Semaste ACPI_RSC_MOVE_GPIO_RES, 212267400Semaste ACPI_RSC_MOVE_SERIAL_RES, 213267400Semaste ACPI_RSC_MOVE_SERIAL_VEN, 214267400Semaste ACPI_RSC_MOVE8, 215267400Semaste ACPI_RSC_MOVE16, 216267400Semaste ACPI_RSC_MOVE32, 217267400Semaste ACPI_RSC_MOVE64, 218267400Semaste ACPI_RSC_SET8, 219267400Semaste ACPI_RSC_SOURCE, 220271333Semaste ACPI_RSC_SOURCEX 221267400Semaste 222267400Semaste} ACPI_RSCONVERT_OPCODES; 223267400Semaste 224267400Semaste/* Resource Conversion sub-opcodes */ 225267400Semaste 226267400Semaste#define ACPI_RSC_COMPARE_AML_LENGTH 0 227267400Semaste#define ACPI_RSC_COMPARE_VALUE 1 228267400Semaste 229267400Semaste#define ACPI_RSC_TABLE_SIZE(d) (sizeof (d) / sizeof (ACPI_RSCONVERT_INFO)) 230267400Semaste 231267400Semaste#define ACPI_RS_OFFSET(f) (UINT8) ACPI_OFFSET (ACPI_RESOURCE,f) 232267400Semaste#define AML_OFFSET(f) (UINT8) ACPI_OFFSET (AML_RESOURCE,f) 233267400Semaste 234267400Semaste 235267400Semaste/* 236267400Semaste * Individual entry for the resource dump tables 237267400Semaste */ 238267400Semastetypedef const struct acpi_rsdump_info 239267400Semaste{ 240267400Semaste UINT8 Opcode; 241267400Semaste UINT8 Offset; 242267400Semaste const char *Name; 243267400Semaste const char **Pointer; 244267400Semaste 245267400Semaste} ACPI_RSDUMP_INFO; 246267400Semaste 247267400Semaste/* Values for the Opcode field above */ 248267400Semaste 249267400Semastetypedef enum 250267400Semaste{ 251267400Semaste ACPI_RSD_TITLE = 0, 252267400Semaste ACPI_RSD_1BITFLAG, 253267400Semaste ACPI_RSD_2BITFLAG, 254267400Semaste ACPI_RSD_3BITFLAG, 255267400Semaste ACPI_RSD_ADDRESS, 256267400Semaste ACPI_RSD_DWORDLIST, 257267400Semaste ACPI_RSD_LITERAL, 258267400Semaste ACPI_RSD_LONGLIST, 259267400Semaste ACPI_RSD_SHORTLIST, 260267400Semaste ACPI_RSD_SHORTLISTX, 261267400Semaste ACPI_RSD_SOURCE, 262267400Semaste ACPI_RSD_STRING, 263267400Semaste ACPI_RSD_UINT8, 264267400Semaste ACPI_RSD_UINT16, 265267400Semaste ACPI_RSD_UINT32, 266267400Semaste ACPI_RSD_UINT64, 267267400Semaste ACPI_RSD_WORDLIST, 268267400Semaste ACPI_RSD_LABEL, 269267400Semaste ACPI_RSD_SOURCE_LABEL, 270267400Semaste 271267400Semaste} ACPI_RSDUMP_OPCODES; 272267400Semaste 273267400Semaste/* restore default alignment */ 274267400Semaste 275267400Semaste#pragma pack() 276267400Semaste 277267400Semaste 278267400Semaste/* Resource tables indexed by internal resource type */ 279267400Semaste 280267400Semasteextern const UINT8 AcpiGbl_AmlResourceSizes[]; 281267400Semasteextern const UINT8 AcpiGbl_AmlResourceSerialBusSizes[]; 282267400Semasteextern ACPI_RSCONVERT_INFO *AcpiGbl_SetResourceDispatch[]; 283267400Semaste 284267400Semaste/* Resource tables indexed by raw AML resource descriptor type */ 285267400Semaste 286267400Semasteextern const UINT8 AcpiGbl_ResourceStructSizes[]; 287267400Semasteextern const UINT8 AcpiGbl_ResourceStructSerialBusSizes[]; 288267400Semasteextern ACPI_RSCONVERT_INFO *AcpiGbl_GetResourceDispatch[]; 289267400Semaste 290267400Semasteextern ACPI_RSCONVERT_INFO *AcpiGbl_ConvertResourceSerialBusDispatch[]; 291267400Semaste 292267400Semastetypedef struct acpi_vendor_walk_info 293267400Semaste{ 294267400Semaste ACPI_VENDOR_UUID *Uuid; 295267400Semaste ACPI_BUFFER *Buffer; 296267400Semaste ACPI_STATUS Status; 297267400Semaste 298267400Semaste} ACPI_VENDOR_WALK_INFO; 299267400Semaste 300267400Semaste 301267400Semaste/* 302267400Semaste * rscreate 303267400Semaste */ 304267400SemasteACPI_STATUS 305267400SemasteAcpiRsCreateResourceList ( 306267400Semaste ACPI_OPERAND_OBJECT *AmlBuffer, 307267400Semaste ACPI_BUFFER *OutputBuffer); 308267400Semaste 309ACPI_STATUS 310AcpiRsCreateAmlResources ( 311 ACPI_BUFFER *ResourceList, 312 ACPI_BUFFER *OutputBuffer); 313 314ACPI_STATUS 315AcpiRsCreatePciRoutingTable ( 316 ACPI_OPERAND_OBJECT *PackageObject, 317 ACPI_BUFFER *OutputBuffer); 318 319 320/* 321 * rsutils 322 */ 323ACPI_STATUS 324AcpiRsGetPrtMethodData ( 325 ACPI_NAMESPACE_NODE *Node, 326 ACPI_BUFFER *RetBuffer); 327 328ACPI_STATUS 329AcpiRsGetCrsMethodData ( 330 ACPI_NAMESPACE_NODE *Node, 331 ACPI_BUFFER *RetBuffer); 332 333ACPI_STATUS 334AcpiRsGetPrsMethodData ( 335 ACPI_NAMESPACE_NODE *Node, 336 ACPI_BUFFER *RetBuffer); 337 338ACPI_STATUS 339AcpiRsGetMethodData ( 340 ACPI_HANDLE Handle, 341 const char *Path, 342 ACPI_BUFFER *RetBuffer); 343 344ACPI_STATUS 345AcpiRsSetSrsMethodData ( 346 ACPI_NAMESPACE_NODE *Node, 347 ACPI_BUFFER *RetBuffer); 348 349ACPI_STATUS 350AcpiRsGetAeiMethodData ( 351 ACPI_NAMESPACE_NODE *Node, 352 ACPI_BUFFER *RetBuffer); 353 354/* 355 * rscalc 356 */ 357ACPI_STATUS 358AcpiRsGetListLength ( 359 UINT8 *AmlBuffer, 360 UINT32 AmlBufferLength, 361 ACPI_SIZE *SizeNeeded); 362 363ACPI_STATUS 364AcpiRsGetAmlLength ( 365 ACPI_RESOURCE *ResourceList, 366 ACPI_SIZE ResourceListSize, 367 ACPI_SIZE *SizeNeeded); 368 369ACPI_STATUS 370AcpiRsGetPciRoutingTableLength ( 371 ACPI_OPERAND_OBJECT *PackageObject, 372 ACPI_SIZE *BufferSizeNeeded); 373 374ACPI_STATUS 375AcpiRsConvertAmlToResources ( 376 UINT8 *Aml, 377 UINT32 Length, 378 UINT32 Offset, 379 UINT8 ResourceIndex, 380 void **Context); 381 382ACPI_STATUS 383AcpiRsConvertResourcesToAml ( 384 ACPI_RESOURCE *Resource, 385 ACPI_SIZE AmlSizeNeeded, 386 UINT8 *OutputBuffer); 387 388 389/* 390 * rsaddr 391 */ 392void 393AcpiRsSetAddressCommon ( 394 AML_RESOURCE *Aml, 395 ACPI_RESOURCE *Resource); 396 397BOOLEAN 398AcpiRsGetAddressCommon ( 399 ACPI_RESOURCE *Resource, 400 AML_RESOURCE *Aml); 401 402 403/* 404 * rsmisc 405 */ 406ACPI_STATUS 407AcpiRsConvertAmlToResource ( 408 ACPI_RESOURCE *Resource, 409 AML_RESOURCE *Aml, 410 ACPI_RSCONVERT_INFO *Info); 411 412ACPI_STATUS 413AcpiRsConvertResourceToAml ( 414 ACPI_RESOURCE *Resource, 415 AML_RESOURCE *Aml, 416 ACPI_RSCONVERT_INFO *Info); 417 418 419/* 420 * rsutils 421 */ 422void 423AcpiRsMoveData ( 424 void *Destination, 425 void *Source, 426 UINT16 ItemCount, 427 UINT8 MoveType); 428 429UINT8 430AcpiRsDecodeBitmask ( 431 UINT16 Mask, 432 UINT8 *List); 433 434UINT16 435AcpiRsEncodeBitmask ( 436 UINT8 *List, 437 UINT8 Count); 438 439ACPI_RS_LENGTH 440AcpiRsGetResourceSource ( 441 ACPI_RS_LENGTH ResourceLength, 442 ACPI_RS_LENGTH MinimumLength, 443 ACPI_RESOURCE_SOURCE *ResourceSource, 444 AML_RESOURCE *Aml, 445 char *StringPtr); 446 447ACPI_RSDESC_SIZE 448AcpiRsSetResourceSource ( 449 AML_RESOURCE *Aml, 450 ACPI_RS_LENGTH MinimumLength, 451 ACPI_RESOURCE_SOURCE *ResourceSource); 452 453void 454AcpiRsSetResourceHeader ( 455 UINT8 DescriptorType, 456 ACPI_RSDESC_SIZE TotalLength, 457 AML_RESOURCE *Aml); 458 459void 460AcpiRsSetResourceLength ( 461 ACPI_RSDESC_SIZE TotalLength, 462 AML_RESOURCE *Aml); 463 464 465/* 466 * rsdump - Debugger support 467 */ 468#ifdef ACPI_DEBUGGER 469void 470AcpiRsDumpResourceList ( 471 ACPI_RESOURCE *Resource); 472 473void 474AcpiRsDumpIrqList ( 475 UINT8 *RouteTable); 476#endif 477 478 479/* 480 * Resource conversion tables 481 */ 482extern ACPI_RSCONVERT_INFO AcpiRsConvertDma[]; 483extern ACPI_RSCONVERT_INFO AcpiRsConvertEndDpf[]; 484extern ACPI_RSCONVERT_INFO AcpiRsConvertIo[]; 485extern ACPI_RSCONVERT_INFO AcpiRsConvertFixedIo[]; 486extern ACPI_RSCONVERT_INFO AcpiRsConvertEndTag[]; 487extern ACPI_RSCONVERT_INFO AcpiRsConvertMemory24[]; 488extern ACPI_RSCONVERT_INFO AcpiRsConvertGenericReg[]; 489extern ACPI_RSCONVERT_INFO AcpiRsConvertMemory32[]; 490extern ACPI_RSCONVERT_INFO AcpiRsConvertFixedMemory32[]; 491extern ACPI_RSCONVERT_INFO AcpiRsConvertAddress32[]; 492extern ACPI_RSCONVERT_INFO AcpiRsConvertAddress16[]; 493extern ACPI_RSCONVERT_INFO AcpiRsConvertExtIrq[]; 494extern ACPI_RSCONVERT_INFO AcpiRsConvertAddress64[]; 495extern ACPI_RSCONVERT_INFO AcpiRsConvertExtAddress64[]; 496extern ACPI_RSCONVERT_INFO AcpiRsConvertGpio[]; 497extern ACPI_RSCONVERT_INFO AcpiRsConvertFixedDma[]; 498extern ACPI_RSCONVERT_INFO AcpiRsConvertI2cSerialBus[]; 499extern ACPI_RSCONVERT_INFO AcpiRsConvertSpiSerialBus[]; 500extern ACPI_RSCONVERT_INFO AcpiRsConvertUartSerialBus[]; 501extern ACPI_RSCONVERT_INFO AcpiRsConvertPinFunction[]; 502extern ACPI_RSCONVERT_INFO AcpiRsConvertPinConfig[]; 503extern ACPI_RSCONVERT_INFO AcpiRsConvertPinGroup[]; 504extern ACPI_RSCONVERT_INFO AcpiRsConvertPinGroupFunction[]; 505extern ACPI_RSCONVERT_INFO AcpiRsConvertPinGroupConfig[]; 506 507/* These resources require separate get/set tables */ 508 509extern ACPI_RSCONVERT_INFO AcpiRsGetIrq[]; 510extern ACPI_RSCONVERT_INFO AcpiRsGetStartDpf[]; 511extern ACPI_RSCONVERT_INFO AcpiRsGetVendorSmall[]; 512extern ACPI_RSCONVERT_INFO AcpiRsGetVendorLarge[]; 513 514extern ACPI_RSCONVERT_INFO AcpiRsSetIrq[]; 515extern ACPI_RSCONVERT_INFO AcpiRsSetStartDpf[]; 516extern ACPI_RSCONVERT_INFO AcpiRsSetVendor[]; 517 518 519#if defined(ACPI_DEBUG_OUTPUT) || defined(ACPI_DEBUGGER) 520/* 521 * rsinfo 522 */ 523extern ACPI_RSDUMP_INFO *AcpiGbl_DumpResourceDispatch[]; 524extern ACPI_RSDUMP_INFO *AcpiGbl_DumpSerialBusDispatch[]; 525 526/* 527 * rsdumpinfo 528 */ 529extern ACPI_RSDUMP_INFO AcpiRsDumpIrq[]; 530extern ACPI_RSDUMP_INFO AcpiRsDumpPrt[]; 531extern ACPI_RSDUMP_INFO AcpiRsDumpDma[]; 532extern ACPI_RSDUMP_INFO AcpiRsDumpStartDpf[]; 533extern ACPI_RSDUMP_INFO AcpiRsDumpEndDpf[]; 534extern ACPI_RSDUMP_INFO AcpiRsDumpIo[]; 535extern ACPI_RSDUMP_INFO AcpiRsDumpIoFlags[]; 536extern ACPI_RSDUMP_INFO AcpiRsDumpFixedIo[]; 537extern ACPI_RSDUMP_INFO AcpiRsDumpVendor[]; 538extern ACPI_RSDUMP_INFO AcpiRsDumpEndTag[]; 539extern ACPI_RSDUMP_INFO AcpiRsDumpMemory24[]; 540extern ACPI_RSDUMP_INFO AcpiRsDumpMemory32[]; 541extern ACPI_RSDUMP_INFO AcpiRsDumpMemoryFlags[]; 542extern ACPI_RSDUMP_INFO AcpiRsDumpFixedMemory32[]; 543extern ACPI_RSDUMP_INFO AcpiRsDumpAddress16[]; 544extern ACPI_RSDUMP_INFO AcpiRsDumpAddress32[]; 545extern ACPI_RSDUMP_INFO AcpiRsDumpAddress64[]; 546extern ACPI_RSDUMP_INFO AcpiRsDumpExtAddress64[]; 547extern ACPI_RSDUMP_INFO AcpiRsDumpExtIrq[]; 548extern ACPI_RSDUMP_INFO AcpiRsDumpGenericReg[]; 549extern ACPI_RSDUMP_INFO AcpiRsDumpGpio[]; 550extern ACPI_RSDUMP_INFO AcpiRsDumpPinFunction[]; 551extern ACPI_RSDUMP_INFO AcpiRsDumpFixedDma[]; 552extern ACPI_RSDUMP_INFO AcpiRsDumpCommonSerialBus[]; 553extern ACPI_RSDUMP_INFO AcpiRsDumpI2cSerialBus[]; 554extern ACPI_RSDUMP_INFO AcpiRsDumpSpiSerialBus[]; 555extern ACPI_RSDUMP_INFO AcpiRsDumpUartSerialBus[]; 556extern ACPI_RSDUMP_INFO AcpiRsDumpGeneralFlags[]; 557extern ACPI_RSDUMP_INFO AcpiRsDumpPinConfig[]; 558extern ACPI_RSDUMP_INFO AcpiRsDumpPinGroup[]; 559extern ACPI_RSDUMP_INFO AcpiRsDumpPinGroupFunction[]; 560extern ACPI_RSDUMP_INFO AcpiRsDumpPinGroupConfig[]; 561#endif 562 563#endif /* __ACRESRC_H__ */ 564