162306a36Sopenharmony_ci/* SPDX-License-Identifier: BSD-3-Clause OR GPL-2.0 */ 262306a36Sopenharmony_ci/****************************************************************************** 362306a36Sopenharmony_ci * 462306a36Sopenharmony_ci * Name: acresrc.h - Resource Manager function prototypes 562306a36Sopenharmony_ci * 662306a36Sopenharmony_ci * Copyright (C) 2000 - 2023, Intel Corp. 762306a36Sopenharmony_ci * 862306a36Sopenharmony_ci *****************************************************************************/ 962306a36Sopenharmony_ci 1062306a36Sopenharmony_ci#ifndef __ACRESRC_H__ 1162306a36Sopenharmony_ci#define __ACRESRC_H__ 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ci/* Need the AML resource descriptor structs */ 1462306a36Sopenharmony_ci 1562306a36Sopenharmony_ci#include "amlresrc.h" 1662306a36Sopenharmony_ci 1762306a36Sopenharmony_ci/* 1862306a36Sopenharmony_ci * If possible, pack the following structures to byte alignment, since we 1962306a36Sopenharmony_ci * don't care about performance for debug output. Two cases where we cannot 2062306a36Sopenharmony_ci * pack the structures: 2162306a36Sopenharmony_ci * 2262306a36Sopenharmony_ci * 1) Hardware does not support misaligned memory transfers 2362306a36Sopenharmony_ci * 2) Compiler does not support pointers within packed structures 2462306a36Sopenharmony_ci */ 2562306a36Sopenharmony_ci#if (!defined(ACPI_MISALIGNMENT_NOT_SUPPORTED) && !defined(ACPI_PACKED_POINTERS_NOT_SUPPORTED)) 2662306a36Sopenharmony_ci#pragma pack(1) 2762306a36Sopenharmony_ci#endif 2862306a36Sopenharmony_ci 2962306a36Sopenharmony_ci/* 3062306a36Sopenharmony_ci * Individual entry for the resource conversion tables 3162306a36Sopenharmony_ci */ 3262306a36Sopenharmony_citypedef const struct acpi_rsconvert_info { 3362306a36Sopenharmony_ci u8 opcode; 3462306a36Sopenharmony_ci u8 resource_offset; 3562306a36Sopenharmony_ci u8 aml_offset; 3662306a36Sopenharmony_ci u8 value; 3762306a36Sopenharmony_ci 3862306a36Sopenharmony_ci} acpi_rsconvert_info; 3962306a36Sopenharmony_ci 4062306a36Sopenharmony_ci/* Resource conversion opcodes */ 4162306a36Sopenharmony_ci 4262306a36Sopenharmony_citypedef enum { 4362306a36Sopenharmony_ci ACPI_RSC_INITGET = 0, 4462306a36Sopenharmony_ci ACPI_RSC_INITSET, 4562306a36Sopenharmony_ci ACPI_RSC_FLAGINIT, 4662306a36Sopenharmony_ci ACPI_RSC_1BITFLAG, 4762306a36Sopenharmony_ci ACPI_RSC_2BITFLAG, 4862306a36Sopenharmony_ci ACPI_RSC_3BITFLAG, 4962306a36Sopenharmony_ci ACPI_RSC_6BITFLAG, 5062306a36Sopenharmony_ci ACPI_RSC_ADDRESS, 5162306a36Sopenharmony_ci ACPI_RSC_BITMASK, 5262306a36Sopenharmony_ci ACPI_RSC_BITMASK16, 5362306a36Sopenharmony_ci ACPI_RSC_COUNT, 5462306a36Sopenharmony_ci ACPI_RSC_COUNT16, 5562306a36Sopenharmony_ci ACPI_RSC_COUNT_GPIO_PIN, 5662306a36Sopenharmony_ci ACPI_RSC_COUNT_GPIO_RES, 5762306a36Sopenharmony_ci ACPI_RSC_COUNT_GPIO_VEN, 5862306a36Sopenharmony_ci ACPI_RSC_COUNT_SERIAL_RES, 5962306a36Sopenharmony_ci ACPI_RSC_COUNT_SERIAL_VEN, 6062306a36Sopenharmony_ci ACPI_RSC_DATA8, 6162306a36Sopenharmony_ci ACPI_RSC_EXIT_EQ, 6262306a36Sopenharmony_ci ACPI_RSC_EXIT_LE, 6362306a36Sopenharmony_ci ACPI_RSC_EXIT_NE, 6462306a36Sopenharmony_ci ACPI_RSC_LENGTH, 6562306a36Sopenharmony_ci ACPI_RSC_MOVE_GPIO_PIN, 6662306a36Sopenharmony_ci ACPI_RSC_MOVE_GPIO_RES, 6762306a36Sopenharmony_ci ACPI_RSC_MOVE_SERIAL_RES, 6862306a36Sopenharmony_ci ACPI_RSC_MOVE_SERIAL_VEN, 6962306a36Sopenharmony_ci ACPI_RSC_MOVE8, 7062306a36Sopenharmony_ci ACPI_RSC_MOVE16, 7162306a36Sopenharmony_ci ACPI_RSC_MOVE32, 7262306a36Sopenharmony_ci ACPI_RSC_MOVE64, 7362306a36Sopenharmony_ci ACPI_RSC_SET8, 7462306a36Sopenharmony_ci ACPI_RSC_SOURCE, 7562306a36Sopenharmony_ci ACPI_RSC_SOURCEX 7662306a36Sopenharmony_ci} ACPI_RSCONVERT_OPCODES; 7762306a36Sopenharmony_ci 7862306a36Sopenharmony_ci/* Resource Conversion sub-opcodes */ 7962306a36Sopenharmony_ci 8062306a36Sopenharmony_ci#define ACPI_RSC_COMPARE_AML_LENGTH 0 8162306a36Sopenharmony_ci#define ACPI_RSC_COMPARE_VALUE 1 8262306a36Sopenharmony_ci 8362306a36Sopenharmony_ci#define ACPI_RSC_TABLE_SIZE(d) (sizeof (d) / sizeof (struct acpi_rsconvert_info)) 8462306a36Sopenharmony_ci 8562306a36Sopenharmony_ci#define ACPI_RS_OFFSET(f) (u8) ACPI_OFFSET (struct acpi_resource,f) 8662306a36Sopenharmony_ci#define AML_OFFSET(f) (u8) ACPI_OFFSET (union aml_resource,f) 8762306a36Sopenharmony_ci 8862306a36Sopenharmony_ci/* 8962306a36Sopenharmony_ci * Individual entry for the resource dump tables 9062306a36Sopenharmony_ci */ 9162306a36Sopenharmony_citypedef const struct acpi_rsdump_info { 9262306a36Sopenharmony_ci u8 opcode; 9362306a36Sopenharmony_ci u8 offset; 9462306a36Sopenharmony_ci const char *name; 9562306a36Sopenharmony_ci const char **pointer; 9662306a36Sopenharmony_ci 9762306a36Sopenharmony_ci} acpi_rsdump_info; 9862306a36Sopenharmony_ci 9962306a36Sopenharmony_ci/* Values for the Opcode field above */ 10062306a36Sopenharmony_ci 10162306a36Sopenharmony_citypedef enum { 10262306a36Sopenharmony_ci ACPI_RSD_TITLE = 0, 10362306a36Sopenharmony_ci ACPI_RSD_1BITFLAG, 10462306a36Sopenharmony_ci ACPI_RSD_2BITFLAG, 10562306a36Sopenharmony_ci ACPI_RSD_3BITFLAG, 10662306a36Sopenharmony_ci ACPI_RSD_6BITFLAG, 10762306a36Sopenharmony_ci ACPI_RSD_ADDRESS, 10862306a36Sopenharmony_ci ACPI_RSD_DWORDLIST, 10962306a36Sopenharmony_ci ACPI_RSD_LITERAL, 11062306a36Sopenharmony_ci ACPI_RSD_LONGLIST, 11162306a36Sopenharmony_ci ACPI_RSD_SHORTLIST, 11262306a36Sopenharmony_ci ACPI_RSD_SHORTLISTX, 11362306a36Sopenharmony_ci ACPI_RSD_SOURCE, 11462306a36Sopenharmony_ci ACPI_RSD_STRING, 11562306a36Sopenharmony_ci ACPI_RSD_UINT8, 11662306a36Sopenharmony_ci ACPI_RSD_UINT16, 11762306a36Sopenharmony_ci ACPI_RSD_UINT32, 11862306a36Sopenharmony_ci ACPI_RSD_UINT64, 11962306a36Sopenharmony_ci ACPI_RSD_WORDLIST, 12062306a36Sopenharmony_ci ACPI_RSD_LABEL, 12162306a36Sopenharmony_ci ACPI_RSD_SOURCE_LABEL, 12262306a36Sopenharmony_ci 12362306a36Sopenharmony_ci} ACPI_RSDUMP_OPCODES; 12462306a36Sopenharmony_ci 12562306a36Sopenharmony_ci/* restore default alignment */ 12662306a36Sopenharmony_ci 12762306a36Sopenharmony_ci#pragma pack() 12862306a36Sopenharmony_ci 12962306a36Sopenharmony_ci/* Resource tables indexed by internal resource type */ 13062306a36Sopenharmony_ci 13162306a36Sopenharmony_ciextern const u8 acpi_gbl_aml_resource_sizes[]; 13262306a36Sopenharmony_ciextern const u8 acpi_gbl_aml_resource_serial_bus_sizes[]; 13362306a36Sopenharmony_ciextern struct acpi_rsconvert_info *acpi_gbl_set_resource_dispatch[]; 13462306a36Sopenharmony_ci 13562306a36Sopenharmony_ci/* Resource tables indexed by raw AML resource descriptor type */ 13662306a36Sopenharmony_ci 13762306a36Sopenharmony_ciextern const u8 acpi_gbl_resource_struct_sizes[]; 13862306a36Sopenharmony_ciextern const u8 acpi_gbl_resource_struct_serial_bus_sizes[]; 13962306a36Sopenharmony_ciextern struct acpi_rsconvert_info *acpi_gbl_get_resource_dispatch[]; 14062306a36Sopenharmony_ci 14162306a36Sopenharmony_ciextern struct acpi_rsconvert_info 14262306a36Sopenharmony_ci *acpi_gbl_convert_resource_serial_bus_dispatch[]; 14362306a36Sopenharmony_ci 14462306a36Sopenharmony_cistruct acpi_vendor_walk_info { 14562306a36Sopenharmony_ci struct acpi_vendor_uuid *uuid; 14662306a36Sopenharmony_ci struct acpi_buffer *buffer; 14762306a36Sopenharmony_ci acpi_status status; 14862306a36Sopenharmony_ci}; 14962306a36Sopenharmony_ci 15062306a36Sopenharmony_ci/* 15162306a36Sopenharmony_ci * rscreate 15262306a36Sopenharmony_ci */ 15362306a36Sopenharmony_ciacpi_status 15462306a36Sopenharmony_ciacpi_rs_create_resource_list(union acpi_operand_object *aml_buffer, 15562306a36Sopenharmony_ci struct acpi_buffer *output_buffer); 15662306a36Sopenharmony_ci 15762306a36Sopenharmony_ciacpi_status 15862306a36Sopenharmony_ciacpi_rs_create_aml_resources(struct acpi_buffer *resource_list, 15962306a36Sopenharmony_ci struct acpi_buffer *output_buffer); 16062306a36Sopenharmony_ci 16162306a36Sopenharmony_ciacpi_status 16262306a36Sopenharmony_ciacpi_rs_create_pci_routing_table(union acpi_operand_object *package_object, 16362306a36Sopenharmony_ci struct acpi_buffer *output_buffer); 16462306a36Sopenharmony_ci 16562306a36Sopenharmony_ci/* 16662306a36Sopenharmony_ci * rsutils 16762306a36Sopenharmony_ci */ 16862306a36Sopenharmony_ci 16962306a36Sopenharmony_ciacpi_status 17062306a36Sopenharmony_ciacpi_rs_get_prt_method_data(struct acpi_namespace_node *node, 17162306a36Sopenharmony_ci struct acpi_buffer *ret_buffer); 17262306a36Sopenharmony_ci 17362306a36Sopenharmony_ciacpi_status 17462306a36Sopenharmony_ciacpi_rs_get_crs_method_data(struct acpi_namespace_node *node, 17562306a36Sopenharmony_ci struct acpi_buffer *ret_buffer); 17662306a36Sopenharmony_ci 17762306a36Sopenharmony_ciacpi_status 17862306a36Sopenharmony_ciacpi_rs_get_prs_method_data(struct acpi_namespace_node *node, 17962306a36Sopenharmony_ci struct acpi_buffer *ret_buffer); 18062306a36Sopenharmony_ci 18162306a36Sopenharmony_ciacpi_status 18262306a36Sopenharmony_ciacpi_rs_get_method_data(acpi_handle handle, 18362306a36Sopenharmony_ci const char *path, struct acpi_buffer *ret_buffer); 18462306a36Sopenharmony_ci 18562306a36Sopenharmony_ciacpi_status 18662306a36Sopenharmony_ciacpi_rs_set_srs_method_data(struct acpi_namespace_node *node, 18762306a36Sopenharmony_ci struct acpi_buffer *ret_buffer); 18862306a36Sopenharmony_ci 18962306a36Sopenharmony_ciacpi_status 19062306a36Sopenharmony_ciacpi_rs_get_aei_method_data(struct acpi_namespace_node *node, 19162306a36Sopenharmony_ci struct acpi_buffer *ret_buffer); 19262306a36Sopenharmony_ci 19362306a36Sopenharmony_ci/* 19462306a36Sopenharmony_ci * rscalc 19562306a36Sopenharmony_ci */ 19662306a36Sopenharmony_ciacpi_status 19762306a36Sopenharmony_ciacpi_rs_get_list_length(u8 *aml_buffer, 19862306a36Sopenharmony_ci u32 aml_buffer_length, acpi_size *size_needed); 19962306a36Sopenharmony_ci 20062306a36Sopenharmony_ciacpi_status 20162306a36Sopenharmony_ciacpi_rs_get_aml_length(struct acpi_resource *resource_list, 20262306a36Sopenharmony_ci acpi_size resource_list_size, acpi_size *size_needed); 20362306a36Sopenharmony_ci 20462306a36Sopenharmony_ciacpi_status 20562306a36Sopenharmony_ciacpi_rs_get_pci_routing_table_length(union acpi_operand_object *package_object, 20662306a36Sopenharmony_ci acpi_size *buffer_size_needed); 20762306a36Sopenharmony_ci 20862306a36Sopenharmony_ciacpi_status 20962306a36Sopenharmony_ciacpi_rs_convert_aml_to_resources(u8 * aml, 21062306a36Sopenharmony_ci u32 length, 21162306a36Sopenharmony_ci u32 offset, u8 resource_index, void **context); 21262306a36Sopenharmony_ci 21362306a36Sopenharmony_ciacpi_status 21462306a36Sopenharmony_ciacpi_rs_convert_resources_to_aml(struct acpi_resource *resource, 21562306a36Sopenharmony_ci acpi_size aml_size_needed, u8 * output_buffer); 21662306a36Sopenharmony_ci 21762306a36Sopenharmony_ci/* 21862306a36Sopenharmony_ci * rsaddr 21962306a36Sopenharmony_ci */ 22062306a36Sopenharmony_civoid 22162306a36Sopenharmony_ciacpi_rs_set_address_common(union aml_resource *aml, 22262306a36Sopenharmony_ci struct acpi_resource *resource); 22362306a36Sopenharmony_ci 22462306a36Sopenharmony_ciu8 22562306a36Sopenharmony_ciacpi_rs_get_address_common(struct acpi_resource *resource, 22662306a36Sopenharmony_ci union aml_resource *aml); 22762306a36Sopenharmony_ci 22862306a36Sopenharmony_ci/* 22962306a36Sopenharmony_ci * rsmisc 23062306a36Sopenharmony_ci */ 23162306a36Sopenharmony_ciacpi_status 23262306a36Sopenharmony_ciacpi_rs_convert_aml_to_resource(struct acpi_resource *resource, 23362306a36Sopenharmony_ci union aml_resource *aml, 23462306a36Sopenharmony_ci struct acpi_rsconvert_info *info); 23562306a36Sopenharmony_ci 23662306a36Sopenharmony_ciacpi_status 23762306a36Sopenharmony_ciacpi_rs_convert_resource_to_aml(struct acpi_resource *resource, 23862306a36Sopenharmony_ci union aml_resource *aml, 23962306a36Sopenharmony_ci struct acpi_rsconvert_info *info); 24062306a36Sopenharmony_ci 24162306a36Sopenharmony_ci/* 24262306a36Sopenharmony_ci * rsutils 24362306a36Sopenharmony_ci */ 24462306a36Sopenharmony_civoid 24562306a36Sopenharmony_ciacpi_rs_move_data(void *destination, 24662306a36Sopenharmony_ci void *source, u16 item_count, u8 move_type); 24762306a36Sopenharmony_ci 24862306a36Sopenharmony_ciu8 acpi_rs_decode_bitmask(u16 mask, u8 * list); 24962306a36Sopenharmony_ci 25062306a36Sopenharmony_ciu16 acpi_rs_encode_bitmask(u8 * list, u8 count); 25162306a36Sopenharmony_ci 25262306a36Sopenharmony_ciacpi_rs_length 25362306a36Sopenharmony_ciacpi_rs_get_resource_source(acpi_rs_length resource_length, 25462306a36Sopenharmony_ci acpi_rs_length minimum_length, 25562306a36Sopenharmony_ci struct acpi_resource_source *resource_source, 25662306a36Sopenharmony_ci union aml_resource *aml, char *string_ptr); 25762306a36Sopenharmony_ci 25862306a36Sopenharmony_ciacpi_rsdesc_size 25962306a36Sopenharmony_ciacpi_rs_set_resource_source(union aml_resource *aml, 26062306a36Sopenharmony_ci acpi_rs_length minimum_length, 26162306a36Sopenharmony_ci struct acpi_resource_source *resource_source); 26262306a36Sopenharmony_ci 26362306a36Sopenharmony_civoid 26462306a36Sopenharmony_ciacpi_rs_set_resource_header(u8 descriptor_type, 26562306a36Sopenharmony_ci acpi_rsdesc_size total_length, 26662306a36Sopenharmony_ci union aml_resource *aml); 26762306a36Sopenharmony_ci 26862306a36Sopenharmony_civoid 26962306a36Sopenharmony_ciacpi_rs_set_resource_length(acpi_rsdesc_size total_length, 27062306a36Sopenharmony_ci union aml_resource *aml); 27162306a36Sopenharmony_ci 27262306a36Sopenharmony_ci/* 27362306a36Sopenharmony_ci * rsdump - Debugger support 27462306a36Sopenharmony_ci */ 27562306a36Sopenharmony_ci#ifdef ACPI_DEBUGGER 27662306a36Sopenharmony_civoid acpi_rs_dump_resource_list(struct acpi_resource *resource); 27762306a36Sopenharmony_ci 27862306a36Sopenharmony_civoid acpi_rs_dump_irq_list(u8 *route_table); 27962306a36Sopenharmony_ci#endif 28062306a36Sopenharmony_ci 28162306a36Sopenharmony_ci/* 28262306a36Sopenharmony_ci * Resource conversion tables 28362306a36Sopenharmony_ci */ 28462306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_convert_dma[]; 28562306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_convert_end_dpf[]; 28662306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_convert_io[]; 28762306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_convert_fixed_io[]; 28862306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_convert_end_tag[]; 28962306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_convert_memory24[]; 29062306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_convert_generic_reg[]; 29162306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_convert_memory32[]; 29262306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_convert_fixed_memory32[]; 29362306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_convert_address32[]; 29462306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_convert_address16[]; 29562306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_convert_ext_irq[]; 29662306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_convert_address64[]; 29762306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_convert_ext_address64[]; 29862306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_convert_gpio[]; 29962306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_convert_fixed_dma[]; 30062306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_convert_csi2_serial_bus[]; 30162306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_convert_i2c_serial_bus[]; 30262306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_convert_spi_serial_bus[]; 30362306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_convert_uart_serial_bus[]; 30462306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_convert_pin_function[]; 30562306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_convert_pin_config[]; 30662306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_convert_pin_group[]; 30762306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_convert_pin_group_function[]; 30862306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_convert_pin_group_config[]; 30962306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_convert_clock_input[]; 31062306a36Sopenharmony_ci 31162306a36Sopenharmony_ci/* These resources require separate get/set tables */ 31262306a36Sopenharmony_ci 31362306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_get_irq[]; 31462306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_get_start_dpf[]; 31562306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_get_vendor_small[]; 31662306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_get_vendor_large[]; 31762306a36Sopenharmony_ci 31862306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_set_irq[]; 31962306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_set_start_dpf[]; 32062306a36Sopenharmony_ciextern struct acpi_rsconvert_info acpi_rs_set_vendor[]; 32162306a36Sopenharmony_ci 32262306a36Sopenharmony_ci#if defined(ACPI_DEBUG_OUTPUT) || defined(ACPI_DEBUGGER) 32362306a36Sopenharmony_ci/* 32462306a36Sopenharmony_ci * rsinfo 32562306a36Sopenharmony_ci */ 32662306a36Sopenharmony_ciextern struct acpi_rsdump_info *acpi_gbl_dump_resource_dispatch[]; 32762306a36Sopenharmony_ciextern struct acpi_rsdump_info *acpi_gbl_dump_serial_bus_dispatch[]; 32862306a36Sopenharmony_ci 32962306a36Sopenharmony_ci/* 33062306a36Sopenharmony_ci * rsdumpinfo 33162306a36Sopenharmony_ci */ 33262306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_irq[]; 33362306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_prt[]; 33462306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_dma[]; 33562306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_start_dpf[]; 33662306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_end_dpf[]; 33762306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_io[]; 33862306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_io_flags[]; 33962306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_fixed_io[]; 34062306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_vendor[]; 34162306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_end_tag[]; 34262306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_memory24[]; 34362306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_memory32[]; 34462306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_memory_flags[]; 34562306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_fixed_memory32[]; 34662306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_address16[]; 34762306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_address32[]; 34862306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_address64[]; 34962306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_ext_address64[]; 35062306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_ext_irq[]; 35162306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_generic_reg[]; 35262306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_gpio[]; 35362306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_pin_function[]; 35462306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_fixed_dma[]; 35562306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_common_serial_bus[]; 35662306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_csi2_serial_bus[]; 35762306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_i2c_serial_bus[]; 35862306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_spi_serial_bus[]; 35962306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_uart_serial_bus[]; 36062306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_general_flags[]; 36162306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_pin_config[]; 36262306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_pin_group[]; 36362306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_pin_group_function[]; 36462306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_pin_group_config[]; 36562306a36Sopenharmony_ciextern struct acpi_rsdump_info acpi_rs_dump_clock_input[]; 36662306a36Sopenharmony_ci#endif 36762306a36Sopenharmony_ci 36862306a36Sopenharmony_ci#endif /* __ACRESRC_H__ */ 369