128c506b8Sjruoho /****************************************************************************** 228c506b8Sjruoho * 328c506b8Sjruoho * Name: acresrc.h - Resource Manager function prototypes 428c506b8Sjruoho * 528c506b8Sjruoho *****************************************************************************/ 628c506b8Sjruoho 7159c4e26Sjruoho /* 8*2c7d7e3cSchristos * Copyright (C) 2000 - 2023, Intel Corp. 928c506b8Sjruoho * All rights reserved. 1028c506b8Sjruoho * 11159c4e26Sjruoho * Redistribution and use in source and binary forms, with or without 12159c4e26Sjruoho * modification, are permitted provided that the following conditions 13159c4e26Sjruoho * are met: 14159c4e26Sjruoho * 1. Redistributions of source code must retain the above copyright 15159c4e26Sjruoho * notice, this list of conditions, and the following disclaimer, 16159c4e26Sjruoho * without modification. 17159c4e26Sjruoho * 2. Redistributions in binary form must reproduce at minimum a disclaimer 18159c4e26Sjruoho * substantially similar to the "NO WARRANTY" disclaimer below 19159c4e26Sjruoho * ("Disclaimer") and any redistribution must be conditioned upon 20159c4e26Sjruoho * including a substantially similar Disclaimer requirement for further 21159c4e26Sjruoho * binary redistribution. 22159c4e26Sjruoho * 3. Neither the names of the above-listed copyright holders nor the names 23159c4e26Sjruoho * of any contributors may be used to endorse or promote products derived 24159c4e26Sjruoho * from this software without specific prior written permission. 2528c506b8Sjruoho * 26159c4e26Sjruoho * Alternatively, this software may be distributed under the terms of the 27159c4e26Sjruoho * GNU General Public License ("GPL") version 2 as published by the Free 28159c4e26Sjruoho * Software Foundation. 2928c506b8Sjruoho * 30159c4e26Sjruoho * NO WARRANTY 31159c4e26Sjruoho * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 32159c4e26Sjruoho * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 3398244dcfSchristos * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 34159c4e26Sjruoho * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 35159c4e26Sjruoho * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 36159c4e26Sjruoho * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 37159c4e26Sjruoho * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 38159c4e26Sjruoho * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 39159c4e26Sjruoho * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING 40159c4e26Sjruoho * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 41159c4e26Sjruoho * POSSIBILITY OF SUCH DAMAGES. 42159c4e26Sjruoho */ 4328c506b8Sjruoho 4428c506b8Sjruoho #ifndef __ACRESRC_H__ 4528c506b8Sjruoho #define __ACRESRC_H__ 4628c506b8Sjruoho 4728c506b8Sjruoho /* Need the AML resource descriptor structs */ 4828c506b8Sjruoho 4928c506b8Sjruoho #include "amlresrc.h" 5028c506b8Sjruoho 5128c506b8Sjruoho 5228c506b8Sjruoho /* 5328c506b8Sjruoho * If possible, pack the following structures to byte alignment, since we 5428c506b8Sjruoho * don't care about performance for debug output. Two cases where we cannot 5528c506b8Sjruoho * pack the structures: 5628c506b8Sjruoho * 5728c506b8Sjruoho * 1) Hardware does not support misaligned memory transfers 5828c506b8Sjruoho * 2) Compiler does not support pointers within packed structures 5928c506b8Sjruoho */ 6028c506b8Sjruoho #if (!defined(ACPI_MISALIGNMENT_NOT_SUPPORTED) && !defined(ACPI_PACKED_POINTERS_NOT_SUPPORTED)) 6128c506b8Sjruoho #pragma pack(1) 6228c506b8Sjruoho #endif 6328c506b8Sjruoho 6428c506b8Sjruoho /* 6528c506b8Sjruoho * Individual entry for the resource conversion tables 6628c506b8Sjruoho */ 6728c506b8Sjruoho typedef const struct acpi_rsconvert_info 6828c506b8Sjruoho { 6928c506b8Sjruoho UINT8 Opcode; 7028c506b8Sjruoho UINT8 ResourceOffset; 7128c506b8Sjruoho UINT8 AmlOffset; 7228c506b8Sjruoho UINT8 Value; 7328c506b8Sjruoho 7428c506b8Sjruoho } ACPI_RSCONVERT_INFO; 7528c506b8Sjruoho 7628c506b8Sjruoho /* Resource conversion opcodes */ 7728c506b8Sjruoho 78a2c051a9Schristos typedef enum 79a2c051a9Schristos { 80a2c051a9Schristos ACPI_RSC_INITGET = 0, 81a2c051a9Schristos ACPI_RSC_INITSET, 82a2c051a9Schristos ACPI_RSC_FLAGINIT, 83a2c051a9Schristos ACPI_RSC_1BITFLAG, 84a2c051a9Schristos ACPI_RSC_2BITFLAG, 85a2c051a9Schristos ACPI_RSC_3BITFLAG, 8698244dcfSchristos ACPI_RSC_6BITFLAG, 87a2c051a9Schristos ACPI_RSC_ADDRESS, 88a2c051a9Schristos ACPI_RSC_BITMASK, 89a2c051a9Schristos ACPI_RSC_BITMASK16, 90a2c051a9Schristos ACPI_RSC_COUNT, 91a2c051a9Schristos ACPI_RSC_COUNT16, 92a2c051a9Schristos ACPI_RSC_COUNT_GPIO_PIN, 93a2c051a9Schristos ACPI_RSC_COUNT_GPIO_RES, 94a2c051a9Schristos ACPI_RSC_COUNT_GPIO_VEN, 95a2c051a9Schristos ACPI_RSC_COUNT_SERIAL_RES, 96a2c051a9Schristos ACPI_RSC_COUNT_SERIAL_VEN, 97a2c051a9Schristos ACPI_RSC_DATA8, 98a2c051a9Schristos ACPI_RSC_EXIT_EQ, 99a2c051a9Schristos ACPI_RSC_EXIT_LE, 100a2c051a9Schristos ACPI_RSC_EXIT_NE, 101a2c051a9Schristos ACPI_RSC_LENGTH, 102a2c051a9Schristos ACPI_RSC_MOVE_GPIO_PIN, 103a2c051a9Schristos ACPI_RSC_MOVE_GPIO_RES, 104a2c051a9Schristos ACPI_RSC_MOVE_SERIAL_RES, 105a2c051a9Schristos ACPI_RSC_MOVE_SERIAL_VEN, 106a2c051a9Schristos ACPI_RSC_MOVE8, 107a2c051a9Schristos ACPI_RSC_MOVE16, 108a2c051a9Schristos ACPI_RSC_MOVE32, 109a2c051a9Schristos ACPI_RSC_MOVE64, 110a2c051a9Schristos ACPI_RSC_SET8, 111a2c051a9Schristos ACPI_RSC_SOURCE, 112a2c051a9Schristos ACPI_RSC_SOURCEX 113a2c051a9Schristos 114a2c051a9Schristos } ACPI_RSCONVERT_OPCODES; 11528c506b8Sjruoho 11628c506b8Sjruoho /* Resource Conversion sub-opcodes */ 11728c506b8Sjruoho 11828c506b8Sjruoho #define ACPI_RSC_COMPARE_AML_LENGTH 0 11928c506b8Sjruoho #define ACPI_RSC_COMPARE_VALUE 1 12028c506b8Sjruoho 12128c506b8Sjruoho #define ACPI_RSC_TABLE_SIZE(d) (sizeof (d) / sizeof (ACPI_RSCONVERT_INFO)) 12228c506b8Sjruoho 12328c506b8Sjruoho #define ACPI_RS_OFFSET(f) (UINT8) ACPI_OFFSET (ACPI_RESOURCE,f) 12428c506b8Sjruoho #define AML_OFFSET(f) (UINT8) ACPI_OFFSET (AML_RESOURCE,f) 12528c506b8Sjruoho 12628c506b8Sjruoho 127a2c051a9Schristos /* 128a2c051a9Schristos * Individual entry for the resource dump tables 129a2c051a9Schristos */ 13028c506b8Sjruoho typedef const struct acpi_rsdump_info 13128c506b8Sjruoho { 13228c506b8Sjruoho UINT8 Opcode; 13328c506b8Sjruoho UINT8 Offset; 134716c1ee0Sjruoho const char *Name; 13549c2f1f4Schristos const char **Pointer; 13628c506b8Sjruoho 13728c506b8Sjruoho } ACPI_RSDUMP_INFO; 13828c506b8Sjruoho 13928c506b8Sjruoho /* Values for the Opcode field above */ 14028c506b8Sjruoho 141a2c051a9Schristos typedef enum 142a2c051a9Schristos { 143a2c051a9Schristos ACPI_RSD_TITLE = 0, 144a2c051a9Schristos ACPI_RSD_1BITFLAG, 145a2c051a9Schristos ACPI_RSD_2BITFLAG, 146a2c051a9Schristos ACPI_RSD_3BITFLAG, 14798244dcfSchristos ACPI_RSD_6BITFLAG, 148a2c051a9Schristos ACPI_RSD_ADDRESS, 149a2c051a9Schristos ACPI_RSD_DWORDLIST, 150a2c051a9Schristos ACPI_RSD_LITERAL, 151a2c051a9Schristos ACPI_RSD_LONGLIST, 152a2c051a9Schristos ACPI_RSD_SHORTLIST, 153a2c051a9Schristos ACPI_RSD_SHORTLISTX, 154a2c051a9Schristos ACPI_RSD_SOURCE, 155a2c051a9Schristos ACPI_RSD_STRING, 156a2c051a9Schristos ACPI_RSD_UINT8, 157a2c051a9Schristos ACPI_RSD_UINT16, 158a2c051a9Schristos ACPI_RSD_UINT32, 159a2c051a9Schristos ACPI_RSD_UINT64, 160ae01dbf5Schristos ACPI_RSD_WORDLIST, 161ae01dbf5Schristos ACPI_RSD_LABEL, 162ae01dbf5Schristos ACPI_RSD_SOURCE_LABEL, 163a2c051a9Schristos 164a2c051a9Schristos } ACPI_RSDUMP_OPCODES; 16528c506b8Sjruoho 16628c506b8Sjruoho /* restore default alignment */ 16728c506b8Sjruoho 16828c506b8Sjruoho #pragma pack() 16928c506b8Sjruoho 17028c506b8Sjruoho 17128c506b8Sjruoho /* Resource tables indexed by internal resource type */ 17228c506b8Sjruoho 17328c506b8Sjruoho extern const UINT8 AcpiGbl_AmlResourceSizes[]; 174a2c051a9Schristos extern const UINT8 AcpiGbl_AmlResourceSerialBusSizes[]; 17528c506b8Sjruoho extern ACPI_RSCONVERT_INFO *AcpiGbl_SetResourceDispatch[]; 17628c506b8Sjruoho 17728c506b8Sjruoho /* Resource tables indexed by raw AML resource descriptor type */ 17828c506b8Sjruoho 17928c506b8Sjruoho extern const UINT8 AcpiGbl_ResourceStructSizes[]; 180a2c051a9Schristos extern const UINT8 AcpiGbl_ResourceStructSerialBusSizes[]; 18128c506b8Sjruoho extern ACPI_RSCONVERT_INFO *AcpiGbl_GetResourceDispatch[]; 18228c506b8Sjruoho 183a2c051a9Schristos extern ACPI_RSCONVERT_INFO *AcpiGbl_ConvertResourceSerialBusDispatch[]; 18428c506b8Sjruoho 18528c506b8Sjruoho typedef struct acpi_vendor_walk_info 18628c506b8Sjruoho { 18728c506b8Sjruoho ACPI_VENDOR_UUID *Uuid; 18828c506b8Sjruoho ACPI_BUFFER *Buffer; 18928c506b8Sjruoho ACPI_STATUS Status; 19028c506b8Sjruoho 19128c506b8Sjruoho } ACPI_VENDOR_WALK_INFO; 19228c506b8Sjruoho 19328c506b8Sjruoho 19428c506b8Sjruoho /* 19528c506b8Sjruoho * rscreate 19628c506b8Sjruoho */ 19728c506b8Sjruoho ACPI_STATUS 19828c506b8Sjruoho AcpiRsCreateResourceList ( 19928c506b8Sjruoho ACPI_OPERAND_OBJECT *AmlBuffer, 20028c506b8Sjruoho ACPI_BUFFER *OutputBuffer); 20128c506b8Sjruoho 20228c506b8Sjruoho ACPI_STATUS 20328c506b8Sjruoho AcpiRsCreateAmlResources ( 204a2c051a9Schristos ACPI_BUFFER *ResourceList, 20528c506b8Sjruoho ACPI_BUFFER *OutputBuffer); 20628c506b8Sjruoho 20728c506b8Sjruoho ACPI_STATUS 20828c506b8Sjruoho AcpiRsCreatePciRoutingTable ( 20928c506b8Sjruoho ACPI_OPERAND_OBJECT *PackageObject, 21028c506b8Sjruoho ACPI_BUFFER *OutputBuffer); 21128c506b8Sjruoho 21228c506b8Sjruoho 21328c506b8Sjruoho /* 21428c506b8Sjruoho * rsutils 21528c506b8Sjruoho */ 21628c506b8Sjruoho ACPI_STATUS 21728c506b8Sjruoho AcpiRsGetPrtMethodData ( 21828c506b8Sjruoho ACPI_NAMESPACE_NODE *Node, 21928c506b8Sjruoho ACPI_BUFFER *RetBuffer); 22028c506b8Sjruoho 22128c506b8Sjruoho ACPI_STATUS 22228c506b8Sjruoho AcpiRsGetCrsMethodData ( 22328c506b8Sjruoho ACPI_NAMESPACE_NODE *Node, 22428c506b8Sjruoho ACPI_BUFFER *RetBuffer); 22528c506b8Sjruoho 22628c506b8Sjruoho ACPI_STATUS 22728c506b8Sjruoho AcpiRsGetPrsMethodData ( 22828c506b8Sjruoho ACPI_NAMESPACE_NODE *Node, 22928c506b8Sjruoho ACPI_BUFFER *RetBuffer); 23028c506b8Sjruoho 23128c506b8Sjruoho ACPI_STATUS 23228c506b8Sjruoho AcpiRsGetMethodData ( 23328c506b8Sjruoho ACPI_HANDLE Handle, 23449c2f1f4Schristos const char *Path, 23528c506b8Sjruoho ACPI_BUFFER *RetBuffer); 23628c506b8Sjruoho 23728c506b8Sjruoho ACPI_STATUS 23828c506b8Sjruoho AcpiRsSetSrsMethodData ( 23928c506b8Sjruoho ACPI_NAMESPACE_NODE *Node, 24028c506b8Sjruoho ACPI_BUFFER *RetBuffer); 24128c506b8Sjruoho 242a2c051a9Schristos ACPI_STATUS 243a2c051a9Schristos AcpiRsGetAeiMethodData ( 244a2c051a9Schristos ACPI_NAMESPACE_NODE *Node, 245a2c051a9Schristos ACPI_BUFFER *RetBuffer); 24628c506b8Sjruoho 24728c506b8Sjruoho /* 24828c506b8Sjruoho * rscalc 24928c506b8Sjruoho */ 25028c506b8Sjruoho ACPI_STATUS 25128c506b8Sjruoho AcpiRsGetListLength ( 25228c506b8Sjruoho UINT8 *AmlBuffer, 25328c506b8Sjruoho UINT32 AmlBufferLength, 25428c506b8Sjruoho ACPI_SIZE *SizeNeeded); 25528c506b8Sjruoho 25628c506b8Sjruoho ACPI_STATUS 25728c506b8Sjruoho AcpiRsGetAmlLength ( 258a2c051a9Schristos ACPI_RESOURCE *ResourceList, 259a2c051a9Schristos ACPI_SIZE ResourceListSize, 26028c506b8Sjruoho ACPI_SIZE *SizeNeeded); 26128c506b8Sjruoho 26228c506b8Sjruoho ACPI_STATUS 26328c506b8Sjruoho AcpiRsGetPciRoutingTableLength ( 26428c506b8Sjruoho ACPI_OPERAND_OBJECT *PackageObject, 26528c506b8Sjruoho ACPI_SIZE *BufferSizeNeeded); 26628c506b8Sjruoho 26728c506b8Sjruoho ACPI_STATUS 26828c506b8Sjruoho AcpiRsConvertAmlToResources ( 26928c506b8Sjruoho UINT8 *Aml, 27028c506b8Sjruoho UINT32 Length, 27128c506b8Sjruoho UINT32 Offset, 27228c506b8Sjruoho UINT8 ResourceIndex, 273a2c051a9Schristos void **Context); 27428c506b8Sjruoho 27528c506b8Sjruoho ACPI_STATUS 27628c506b8Sjruoho AcpiRsConvertResourcesToAml ( 27728c506b8Sjruoho ACPI_RESOURCE *Resource, 27828c506b8Sjruoho ACPI_SIZE AmlSizeNeeded, 27928c506b8Sjruoho UINT8 *OutputBuffer); 28028c506b8Sjruoho 28128c506b8Sjruoho 28228c506b8Sjruoho /* 28328c506b8Sjruoho * rsaddr 28428c506b8Sjruoho */ 28528c506b8Sjruoho void 28628c506b8Sjruoho AcpiRsSetAddressCommon ( 28728c506b8Sjruoho AML_RESOURCE *Aml, 28828c506b8Sjruoho ACPI_RESOURCE *Resource); 28928c506b8Sjruoho 29028c506b8Sjruoho BOOLEAN 29128c506b8Sjruoho AcpiRsGetAddressCommon ( 29228c506b8Sjruoho ACPI_RESOURCE *Resource, 29328c506b8Sjruoho AML_RESOURCE *Aml); 29428c506b8Sjruoho 29528c506b8Sjruoho 29628c506b8Sjruoho /* 29728c506b8Sjruoho * rsmisc 29828c506b8Sjruoho */ 29928c506b8Sjruoho ACPI_STATUS 30028c506b8Sjruoho AcpiRsConvertAmlToResource ( 30128c506b8Sjruoho ACPI_RESOURCE *Resource, 30228c506b8Sjruoho AML_RESOURCE *Aml, 30328c506b8Sjruoho ACPI_RSCONVERT_INFO *Info); 30428c506b8Sjruoho 30528c506b8Sjruoho ACPI_STATUS 30628c506b8Sjruoho AcpiRsConvertResourceToAml ( 30728c506b8Sjruoho ACPI_RESOURCE *Resource, 30828c506b8Sjruoho AML_RESOURCE *Aml, 30928c506b8Sjruoho ACPI_RSCONVERT_INFO *Info); 31028c506b8Sjruoho 31128c506b8Sjruoho 31228c506b8Sjruoho /* 31328c506b8Sjruoho * rsutils 31428c506b8Sjruoho */ 31528c506b8Sjruoho void 31628c506b8Sjruoho AcpiRsMoveData ( 31728c506b8Sjruoho void *Destination, 31828c506b8Sjruoho void *Source, 31928c506b8Sjruoho UINT16 ItemCount, 32028c506b8Sjruoho UINT8 MoveType); 32128c506b8Sjruoho 32228c506b8Sjruoho UINT8 32328c506b8Sjruoho AcpiRsDecodeBitmask ( 32428c506b8Sjruoho UINT16 Mask, 32528c506b8Sjruoho UINT8 *List); 32628c506b8Sjruoho 32728c506b8Sjruoho UINT16 32828c506b8Sjruoho AcpiRsEncodeBitmask ( 32928c506b8Sjruoho UINT8 *List, 33028c506b8Sjruoho UINT8 Count); 33128c506b8Sjruoho 33228c506b8Sjruoho ACPI_RS_LENGTH 33328c506b8Sjruoho AcpiRsGetResourceSource ( 33428c506b8Sjruoho ACPI_RS_LENGTH ResourceLength, 33528c506b8Sjruoho ACPI_RS_LENGTH MinimumLength, 33628c506b8Sjruoho ACPI_RESOURCE_SOURCE *ResourceSource, 33728c506b8Sjruoho AML_RESOURCE *Aml, 33828c506b8Sjruoho char *StringPtr); 33928c506b8Sjruoho 34028c506b8Sjruoho ACPI_RSDESC_SIZE 34128c506b8Sjruoho AcpiRsSetResourceSource ( 34228c506b8Sjruoho AML_RESOURCE *Aml, 34328c506b8Sjruoho ACPI_RS_LENGTH MinimumLength, 34428c506b8Sjruoho ACPI_RESOURCE_SOURCE *ResourceSource); 34528c506b8Sjruoho 34628c506b8Sjruoho void 34728c506b8Sjruoho AcpiRsSetResourceHeader ( 34828c506b8Sjruoho UINT8 DescriptorType, 34928c506b8Sjruoho ACPI_RSDESC_SIZE TotalLength, 35028c506b8Sjruoho AML_RESOURCE *Aml); 35128c506b8Sjruoho 35228c506b8Sjruoho void 35328c506b8Sjruoho AcpiRsSetResourceLength ( 35428c506b8Sjruoho ACPI_RSDESC_SIZE TotalLength, 35528c506b8Sjruoho AML_RESOURCE *Aml); 35628c506b8Sjruoho 35728c506b8Sjruoho 35828c506b8Sjruoho /* 359cb2bd8f0Schristos * rsdump - Debugger support 36028c506b8Sjruoho */ 361cb2bd8f0Schristos #ifdef ACPI_DEBUGGER 36228c506b8Sjruoho void 36328c506b8Sjruoho AcpiRsDumpResourceList ( 36428c506b8Sjruoho ACPI_RESOURCE *Resource); 36528c506b8Sjruoho 36628c506b8Sjruoho void 36728c506b8Sjruoho AcpiRsDumpIrqList ( 36828c506b8Sjruoho UINT8 *RouteTable); 369cb2bd8f0Schristos #endif 37028c506b8Sjruoho 37128c506b8Sjruoho 37228c506b8Sjruoho /* 37328c506b8Sjruoho * Resource conversion tables 37428c506b8Sjruoho */ 37528c506b8Sjruoho extern ACPI_RSCONVERT_INFO AcpiRsConvertDma[]; 37628c506b8Sjruoho extern ACPI_RSCONVERT_INFO AcpiRsConvertEndDpf[]; 37728c506b8Sjruoho extern ACPI_RSCONVERT_INFO AcpiRsConvertIo[]; 37828c506b8Sjruoho extern ACPI_RSCONVERT_INFO AcpiRsConvertFixedIo[]; 37928c506b8Sjruoho extern ACPI_RSCONVERT_INFO AcpiRsConvertEndTag[]; 38028c506b8Sjruoho extern ACPI_RSCONVERT_INFO AcpiRsConvertMemory24[]; 38128c506b8Sjruoho extern ACPI_RSCONVERT_INFO AcpiRsConvertGenericReg[]; 38228c506b8Sjruoho extern ACPI_RSCONVERT_INFO AcpiRsConvertMemory32[]; 38328c506b8Sjruoho extern ACPI_RSCONVERT_INFO AcpiRsConvertFixedMemory32[]; 38428c506b8Sjruoho extern ACPI_RSCONVERT_INFO AcpiRsConvertAddress32[]; 38528c506b8Sjruoho extern ACPI_RSCONVERT_INFO AcpiRsConvertAddress16[]; 38628c506b8Sjruoho extern ACPI_RSCONVERT_INFO AcpiRsConvertExtIrq[]; 38728c506b8Sjruoho extern ACPI_RSCONVERT_INFO AcpiRsConvertAddress64[]; 38828c506b8Sjruoho extern ACPI_RSCONVERT_INFO AcpiRsConvertExtAddress64[]; 389a2c051a9Schristos extern ACPI_RSCONVERT_INFO AcpiRsConvertGpio[]; 390a2c051a9Schristos extern ACPI_RSCONVERT_INFO AcpiRsConvertFixedDma[]; 39198244dcfSchristos extern ACPI_RSCONVERT_INFO AcpiRsConvertCsi2SerialBus[]; 392a2c051a9Schristos extern ACPI_RSCONVERT_INFO AcpiRsConvertI2cSerialBus[]; 393a2c051a9Schristos extern ACPI_RSCONVERT_INFO AcpiRsConvertSpiSerialBus[]; 394a2c051a9Schristos extern ACPI_RSCONVERT_INFO AcpiRsConvertUartSerialBus[]; 395ae01dbf5Schristos extern ACPI_RSCONVERT_INFO AcpiRsConvertPinFunction[]; 396ae01dbf5Schristos extern ACPI_RSCONVERT_INFO AcpiRsConvertPinConfig[]; 397ae01dbf5Schristos extern ACPI_RSCONVERT_INFO AcpiRsConvertPinGroup[]; 398ae01dbf5Schristos extern ACPI_RSCONVERT_INFO AcpiRsConvertPinGroupFunction[]; 399ae01dbf5Schristos extern ACPI_RSCONVERT_INFO AcpiRsConvertPinGroupConfig[]; 400*2c7d7e3cSchristos extern ACPI_RSCONVERT_INFO AcpiRsConvertClockInput[]; 40128c506b8Sjruoho 40228c506b8Sjruoho /* These resources require separate get/set tables */ 40328c506b8Sjruoho 40428c506b8Sjruoho extern ACPI_RSCONVERT_INFO AcpiRsGetIrq[]; 40528c506b8Sjruoho extern ACPI_RSCONVERT_INFO AcpiRsGetStartDpf[]; 40628c506b8Sjruoho extern ACPI_RSCONVERT_INFO AcpiRsGetVendorSmall[]; 40728c506b8Sjruoho extern ACPI_RSCONVERT_INFO AcpiRsGetVendorLarge[]; 40828c506b8Sjruoho 40928c506b8Sjruoho extern ACPI_RSCONVERT_INFO AcpiRsSetIrq[]; 41028c506b8Sjruoho extern ACPI_RSCONVERT_INFO AcpiRsSetStartDpf[]; 41128c506b8Sjruoho extern ACPI_RSCONVERT_INFO AcpiRsSetVendor[]; 41228c506b8Sjruoho 41328c506b8Sjruoho 41428c506b8Sjruoho #if defined(ACPI_DEBUG_OUTPUT) || defined(ACPI_DEBUGGER) 41528c506b8Sjruoho /* 41628c506b8Sjruoho * rsinfo 41728c506b8Sjruoho */ 41828c506b8Sjruoho extern ACPI_RSDUMP_INFO *AcpiGbl_DumpResourceDispatch[]; 419a2c051a9Schristos extern ACPI_RSDUMP_INFO *AcpiGbl_DumpSerialBusDispatch[]; 42028c506b8Sjruoho 42128c506b8Sjruoho /* 422a2c051a9Schristos * rsdumpinfo 42328c506b8Sjruoho */ 42428c506b8Sjruoho extern ACPI_RSDUMP_INFO AcpiRsDumpIrq[]; 425a2c051a9Schristos extern ACPI_RSDUMP_INFO AcpiRsDumpPrt[]; 42628c506b8Sjruoho extern ACPI_RSDUMP_INFO AcpiRsDumpDma[]; 42728c506b8Sjruoho extern ACPI_RSDUMP_INFO AcpiRsDumpStartDpf[]; 42828c506b8Sjruoho extern ACPI_RSDUMP_INFO AcpiRsDumpEndDpf[]; 42928c506b8Sjruoho extern ACPI_RSDUMP_INFO AcpiRsDumpIo[]; 430a2c051a9Schristos extern ACPI_RSDUMP_INFO AcpiRsDumpIoFlags[]; 43128c506b8Sjruoho extern ACPI_RSDUMP_INFO AcpiRsDumpFixedIo[]; 43228c506b8Sjruoho extern ACPI_RSDUMP_INFO AcpiRsDumpVendor[]; 43328c506b8Sjruoho extern ACPI_RSDUMP_INFO AcpiRsDumpEndTag[]; 43428c506b8Sjruoho extern ACPI_RSDUMP_INFO AcpiRsDumpMemory24[]; 43528c506b8Sjruoho extern ACPI_RSDUMP_INFO AcpiRsDumpMemory32[]; 436a2c051a9Schristos extern ACPI_RSDUMP_INFO AcpiRsDumpMemoryFlags[]; 43728c506b8Sjruoho extern ACPI_RSDUMP_INFO AcpiRsDumpFixedMemory32[]; 43828c506b8Sjruoho extern ACPI_RSDUMP_INFO AcpiRsDumpAddress16[]; 43928c506b8Sjruoho extern ACPI_RSDUMP_INFO AcpiRsDumpAddress32[]; 44028c506b8Sjruoho extern ACPI_RSDUMP_INFO AcpiRsDumpAddress64[]; 44128c506b8Sjruoho extern ACPI_RSDUMP_INFO AcpiRsDumpExtAddress64[]; 44228c506b8Sjruoho extern ACPI_RSDUMP_INFO AcpiRsDumpExtIrq[]; 44328c506b8Sjruoho extern ACPI_RSDUMP_INFO AcpiRsDumpGenericReg[]; 444a2c051a9Schristos extern ACPI_RSDUMP_INFO AcpiRsDumpGpio[]; 445ae01dbf5Schristos extern ACPI_RSDUMP_INFO AcpiRsDumpPinFunction[]; 446a2c051a9Schristos extern ACPI_RSDUMP_INFO AcpiRsDumpFixedDma[]; 447a2c051a9Schristos extern ACPI_RSDUMP_INFO AcpiRsDumpCommonSerialBus[]; 44898244dcfSchristos extern ACPI_RSDUMP_INFO AcpiRsDumpCsi2SerialBus[]; 449a2c051a9Schristos extern ACPI_RSDUMP_INFO AcpiRsDumpI2cSerialBus[]; 450a2c051a9Schristos extern ACPI_RSDUMP_INFO AcpiRsDumpSpiSerialBus[]; 451a2c051a9Schristos extern ACPI_RSDUMP_INFO AcpiRsDumpUartSerialBus[]; 452a2c051a9Schristos extern ACPI_RSDUMP_INFO AcpiRsDumpGeneralFlags[]; 453ae01dbf5Schristos extern ACPI_RSDUMP_INFO AcpiRsDumpPinConfig[]; 454ae01dbf5Schristos extern ACPI_RSDUMP_INFO AcpiRsDumpPinGroup[]; 455ae01dbf5Schristos extern ACPI_RSDUMP_INFO AcpiRsDumpPinGroupFunction[]; 456ae01dbf5Schristos extern ACPI_RSDUMP_INFO AcpiRsDumpPinGroupConfig[]; 457*2c7d7e3cSchristos extern ACPI_RSDUMP_INFO AcpiRsDumpClockInput[]; 45828c506b8Sjruoho #endif 45928c506b8Sjruoho 46028c506b8Sjruoho #endif /* __ACRESRC_H__ */ 461