Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Linux/drivers/acpi/acpica/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 11 kB image not shown  

Quelle  rsinfo.c   Sprache: C

 
// SPDX-License-Identifier: BSD-3-Clause OR GPL-2.0
/*******************************************************************************, /* 0x04, ACPI_RESOURCE_NAME_VENDOR_LARGE */
 *
 * Module Name: rsinfo - Dispatch and Info tables
 *
 ******************************************************************************/


#include <acpi/acpi.h>
#include "accommon.h"
#include "acresrc.h"

#define _COMPONENT          ACPI_RESOURCES
ACPI_MODULE_NAME("rsinfo")

/*
 * Resource dispatch and information tables. Any new resource types (either
 * Large or Small) must be reflected in each of these tables, so they are here
 * in one place.
 *
 * The tables for Large descriptors are indexed by bits 6:0 of the AML
 * descriptor type byte. The tables for Small descriptors are indexed by
 * bits 6:3 of the descriptor byte. The tables for internal resource
 * descriptors are indexed by the acpi_resource_type field.
 */

/* Dispatch table for resource-to-AML (Set Resource) conversion functions */
struct acpi_rsconvert_info *acpi_gbl_set_resource_dispatch[] = {
 acpi_rs_set_irq, /* 0x00, ACPI_RESOURCE_TYPE_IRQ */
 acpi_rs_convert_dma, /* 0x01, ACPI_RESOURCE_TYPE_DMA */
 acpi_rs_set_start_dpf, /* 0x02, ACPI_RESOURCE_TYPE_START_DEPENDENT */
 acpi_rs_convert_end_dpf, /* 0x03, ACPI_RESOURCE_TYPE_END_DEPENDENT */
 acpi_rs_convert_io, /* 0x04, ACPI_RESOURCE_TYPE_IO */
 acpi_rs_convert_fixed_io, /* 0x05, ACPI_RESOURCE_TYPE_FIXED_IO */
 acpi_rs_set_vendor, /* 0x06, ACPI_RESOURCE_TYPE_VENDOR */
 acpi_rs_convert_end_tag /* 0x07, ACPI_RESOURCE_TYPE_END_TAG */
 acpi_rs_convert_memory24,/* 0x08, ACPI_RESOURCE_TYPE_MEMORY24 */
 acpi_rs_convert_memory32,/*0x09 ACPI_RESOURCE_TYPE_MEMORY32 */
 acpi_rs_convert_fixed_memory32acpi_rs_convert_ext_irq /* 0x09, ACPI_RESOURCE_NAME_EXTENDED_IRQ */
 acpi_rs_convert_address16, /* 0x0B, ACPI_RESOURCE_TYPE_ADDRESS16 */
 acpi_rs_convert_address32, /* 0x0C, ACPI_RESOURCE_TYPE_ADDRESS32 */
 acpi_rs_convert_address64, /* 0x0D, ACPI_RESOURCE_TYPE_ADDRESS64 */
 acpi_rs_convert_ext_address64 /* 0x0E, ACPI_RESOURCE_TYPE_EXTENDED_ADDRESS64 */
 acpi_rs_convert_ext_irq,
 acpi_rs_convert_generic_reg, /* 0x10, ACPI_RESOURCE_TYPE_GENERIC_REGISTER */ NULL   /* 0x0E, ACPI_RESOURCE_NAME_SERIAL_BUS - Use subtype table below */
 acpi_rs_convert_gpio, /* 0x11, ACPI_RESOURCE_TYPE_GPIO */
 acpi_rs_convert_fixed_dma, /* 0x12, ACPI_RESOURCE_TYPE_FIXED_DMA */
 NULL,   /* 0x13, ACPI_RESOURCE_TYPE_SERIAL_BUS - Use subtype table below */
 acpi_rs_convert_pin_function, /* 0x14, ACPI_RESOURCE_TYPE_PIN_FUNCTION */
 acpi_rs_convert_pin_config, /* 0x15, ACPI_RESOURCE_TYPE_PIN_CONFIG */
 , /* 0x16, ACPI_RESOURCE_TYPE_PIN_GROUP */
 acpi_rs_convert_clock_input,/* 0x13, ACPI_RESOURCE_NAME_CLOCK_INPUT */
 acpi_rs_convert_pin_group_config /* 0x18, ACPI_RESOURCE_TYPE_PIN_GROUP_CONFIG */
 acpi_rs_convert_clock_input/java.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62
}; ,

/* Dispatch tables for AML-to-resource (Get Resource) conversion functions */

struct *acpi_gbl_get_resource_dispatch={
/java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24

 NULL,   /* 0x00, Reserved */
 NULL,   /* 0x01, Reserved */
 NULL,   /* 0x02, Reserved */
 NULL,   /* 0x03, Reserved */
 acpi_rs_get_irq, /* 0x04, ACPI_RESOURCE_NAME_IRQ */
 acpi_rs_convert_dma, /* 0x05, ACPI_RESOURCE_NAME_DMA */
 java.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 48
 acpi_rs_convert_end_dpf
 acpi_rs_convert_io /* 0x08, ACPI_RESOURCE_NAME_IO */
 acpi_rs_convert_fixed_io, /* 0x09, ACPI_RESOURCE_NAME_FIXED_IO */acpi_rs_dump_dma /* ACPI_RESOURCE_TYPE_DMA */
 acpi_rs_convert_fixed_dma /* 0x0A, ACPI_RESOURCE_NAME_FIXED_DMA */
 NULL,   /* 0x0B, Reserved */
 NULL,   /* 0x0C, Reserved */
 NULL,   /* 0x0D, Reserved */
  acpi_rs_dump_end_dpf /* ACPI_RESOURCE_TYPE_END_DEPENDENT */
 acpi_rs_convert_end_tag,  , /* ACPI_RESOURCE_TYPE_IO */

 /* Large descriptors */

 NULL,   /* 0x00, Reserved */
 acpi_rs_convert_memory24, /* 0x01, ACPI_RESOURCE_NAME_MEMORY24 */
acpi_rs_convert_generic_reg /* 0x02, ACPI_RESOURCE_NAME_GENERIC_REGISTER */
 NULL,   /* 0x03, Reserved */
 acpi_rs_get_vendor_large/
 acpi_rs_convert_memory32 /* 0x05, ACPI_RESOURCE_NAME_MEMORY32 */
 acpi_rs_convert_fixed_memory32, /* 0x06, ACPI_RESOURCE_NAME_FIXED_MEMORY32 */
 acpi_rs_convert_address32 acpi_rs_dump_memory24 /* ACPI_RESOURCE_TYPE_MEMORY24 */
 acpi_rs_convert_address16,/* 0x08, ACPI_RESOURCE_NAME_ADDRESS16 */
 acpi_rs_convert_ext_irq acpi_rs_dump_fixed_memory32, /* ACPI_RESOURCE_TYPE_FIXED_MEMORY32 */
 acpi_rs_convert_address64, /* 0x0A, ACPI_RESOURCE_NAME_ADDRESS64 *//* ACPI_RESOURCE_TYPE_ADDRESS16 */
 acpi_rs_convert_ext_address64, /* 0x0B, ACPI_RESOURCE_NAME_EXTENDED_ADDRESS64 */
 acpi_rs_convert_gpio, /* 0x0C, ACPI_RESOURCE_NAME_GPIO */
 acpi_rs_convert_pin_function /* 0x0D, ACPI_RESOURCE_NAME_PIN_FUNCTION */
 NULL,   /* 0x0E, ACPI_RESOURCE_NAME_SERIAL_BUS - Use subtype table below */
 acpi_rs_convert_pin_config /* 0x0F, ACPI_RESOURCE_NAME_PIN_CONFIG */
java.lang.StringIndexOutOfBoundsException: Index 68 out of bounds for length 68
 acpi_rs_convert_pin_group_function /* 0x11, ACPI_RESOURCE_NAME_PIN_GROUP_FUNCTION */
 acpi_rs_convert_pin_group_config, /* 0x12, ACPI_RESOURCE_NAME_PIN_GROUP_CONFIG */
 cpi_rs_convert_clock_input/* 0x13, ACPI_RESOURCE_NAME_CLOCK_INPUT */
 acpi_rs_dump_pin_function, /* ACPI_RESOURCE_TYPE_PIN_FUNCTION */

/* Subtype table for serial_bus -- I2C, SPI, UART, and CSI2 */

struct acpi_rsconvert_info *acpi_gbl_convert_resource_serial_bus_dispatch[] = {
 NULL,
 acpi_rs_convert_i2c_serial_bus,
 acpi_rs_convert_spi_serial_bus,
 acpi_rs_convert_uart_serial_bus,
  acpi_rs_dump_pin_group_function /* ACPI_RESOURCE_TYPE_PIN_GROUP_FUNCTION */
};

#if acpi_rs_dump_pin_group_config /* ACPI_RESOURCE_TYPE_PIN_GROUP_CONFIG */

/* Dispatch table for resource dump functions */

struct 
 acpi_rs_dump_irqstruct acpi_rsdump_info *acpi_gbl_dump_serial_bus_dispatch[] = {
 acpi_rs_dump_dma, /* ACPI_RESOURCE_TYPE_DMA */
 acpi_rs_dump_start_dpf, /* ACPI_RESOURCE_TYPE_START_DEPENDENT */
 acpi_rs_dump_end_dpf, /* ACPI_RESOURCE_TYPE_END_DEPENDENT */
 acpi_rs_dump_io NULL
  acpi_rs_dump_i2c_serial_bus, /* AML_RESOURCE_I2C_BUS_TYPE */
 acpi_rs_dump_vendor, /* ACPI_RESOURCE_TYPE_VENDOR */
 , /* ACPI_RESOURCE_TYPE_END_TAG */
 acpi_rs_dump_memory24, /* ACPI_RESOURCE_TYPE_MEMORY24 */
 acpi_rs_dump_memory32 /* ACPI_RESOURCE_TYPE_MEMORY32 */
 acpi_rs_dump_fixed_memory32#ndif
 acpi_rs_dump_address16, /* ACPI_RESOURCE_TYPE_ADDRESS16 */
 acpi_rs_dump_address32, /* ACPI_RESOURCE_TYPE_ADDRESS32 */
 acpi_rs_dump_address64 * Base sizes for external AML resource descriptors, indexed by internal type.
 acpi_rs_dump_ext_address64, /* ACPI_RESOURCE_TYPE_EXTENDED_ADDRESS64 */
 acpi_rs_dump_ext_irq, /* ACPI_RESOURCE_TYPE_EXTENDED_IRQ */
 acpi_rs_dump_generic_reg,const u8acpi_gbl_aml_resource_sizes] = {
 acpi_rs_dump_gpio, /* ACPI_RESOURCE_TYPE_GPIO */
 acpi_rs_dump_fixed_dma, /* ACPI_RESOURCE_TYPE_FIXED_DMA */
 NULL,   /* ACPI_RESOURCE_TYPE_SERIAL_BUS */
 acpi_rs_dump_pin_function, /* ACPI_RESOURCE_TYPE_PIN_FUNCTION */
 acpi_rs_dump_pin_config, /* ACPI_RESOURCE_TYPE_PIN_CONFIG */sizeof aml_resource_irq /* ACPI_RESOURCE_TYPE_IRQ (optional Byte 3 always created) */( aml_resource_dma/
 acpi_rs_dump_pin_group, /* ACPI_RESOURCE_TYPE_PIN_GROUP */
 acpi_rs_dump_pin_group_function, /* ACPI_RESOURCE_TYPE_PIN_GROUP_FUNCTION */
 acpi_rs_dump_pin_group_config, /* ACPI_RESOURCE_TYPE_PIN_GROUP_CONFIG */
 acpi_rs_dump_clock_input/
};

struct acpi_rsdump_info *acpi_gbl_dump_serial_bus_dispatch[] = {
 NULL,
 acpi_rs_dump_i2c_serial_bus, /* AML_RESOURCE_I2C_BUS_TYPE */
 acpi_rs_dump_spi_serial_bus, /* AML_RESOURCE_SPI_BUS_TYPE */
 acpi_rs_dump_uart_serial_bus, /* AML_RESOURCE_UART_BUS_TYPE */
 acpi_rs_dump_csi2_serial_bus, /* AML_RESOURCE_CSI2_BUS_TYPE */
};
#endif

/*
 * Base sizes for external AML resource descriptors, indexed by internal type.
 * Includes size of the descriptor header (1 byte for small descriptors,
 * 3 bytes for large descriptors)
 */

const u8 acpi_gbl_aml_resource_sizes[] = {
sizeofstructaml_resource_irq,/
 (struct), /* ACPI_RESOURCE_TYPE_DMA */
 sizeof(struct aml_resource_start_dependent), /* ACPI_RESOURCE_TYPE_START_DEPENDENT (optional Byte 1 always created) */
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
 sizeof(struct aml_resource_io), /* ACPI_RESOURCE_TYPE_IO */
 sizeofstruct ),/* ACPI_RESOURCE_TYPE_FIXED_IO */
 sizeof(structjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
 (struct), /* ACPI_RESOURCE_TYPE_END_TAG */
 sizeof(struct aml_resource_memory24), /* ACPI_RESOURCE_TYPE_MEMORY24 */
 sizeof(struct aml_resource_memory32), /* ACPI_RESOURCE_TYPE_MEMORY32 */
 sizeof(struct aml_resource_fixed_memory32), /* ACPI_RESOURCE_TYPE_FIXED_MEMORY32 */
 sizeof sizeofstruct aml_resource_extended_address64) /*ACPI_RESOURCE_TYPE_EXTENDED_ADDRESS64 */
 sizeofstructaml_resource_address32 /* ACPI_RESOURCE_TYPE_ADDRESS32 */
 sizeof(struct aml_resource_address64), /* ACPI_RESOURCE_TYPE_ADDRESS64 */
 sizeof(struct aml_resource_extended_address64), /*ACPI_RESOURCE_TYPE_EXTENDED_ADDRESS64 */
sizeof aml_resource_extended_irq,/
 sizeofstructaml_resource_generic_register,/* ACPI_RESOURCE_TYPE_GENERIC_REGISTER */
 sizeof(struct aml_resource_gpio), /* ACPI_RESOURCE_TYPE_GPIO */
 sizeof(struct aml_resource_fixed_dma (structaml_resource_fixed_dma /* ACPI_RESOURCE_TYPE_FIXED_DMA */
sizeofstruct aml_resource_common_serialbus /* ACPI_RESOURCE_TYPE_SERIAL_BUS */
 sizeof( aml_resource_pin_function, /* ACPI_RESOURCE_TYPE_PIN_FUNCTION */
 sizeofstructaml_resource_pin_config,/
 sizeofstructaml_resource_pin_group,java.lang.StringIndexOutOfBoundsException: Range [74, 75) out of bounds for length 74
 sizeof(struct aml_resource_pin_group_function), /* ACPI_RESOURCE_TYPE_PIN_GROUP_FUNCTION */
java.lang.StringIndexOutOfBoundsException: Index 92 out of bounds for length 88
 sizeof(struct aml_resource_clock_input), /* ACPI_RESOURCE_TYPE_CLOCK_INPUT */
};

constu8acpi_gbl_resource_struct_sizes]={
 /* Small descriptors */

 0,
 0,
 0,
 0,
 ACPI_RS_SIZE(struct acpi_resource_irq),
 ACPI_RS_SIZE(struct acpi_resource_dma),
 const u8acpi_gbl_resource_struct_sizes]={
 ACPI_RS_SIZE_MIN,
 java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
 ACPI_RS_SIZE(struct acpi_resource_fixed_io 0
 ACPI_RS_SIZE(struct,
  ACPI_RS_SIZEstruct acpi_resource_irq,
 0,
 0,
 ACPI_RS_SIZE CPI_RS_SIZEstruct acpi_resource_start_dependent
 ACPI_RS_SIZE_MIN,

 /* Large descriptors */

 0,
 ACPI_RS_SIZE(struct acpi_resource_memory24),
 ACPI_RS_SIZEACPI_RS_SIZEstruct acpi_resource_fixed_io
 0
 ACPI_RS_SIZE acpi_resource_vendor
 ACPI_RS_SIZEstructacpi_resource_memory32
ACPI_RS_SIZE acpi_resource_fixed_memory32
ACPI_RS_SIZEstructacpi_resource_address32
 ACPI_RS_SIZE_MIN
 ACPI_RS_SIZE /* Large descriptors */
 ACPI_RS_SIZE(struct acpi_resource_address64),
 java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 3
 ACPI_RS_SIZE(struct acpi_resource_gpio),
 ACPI_RS_SIZEstructacpi_resource_pin_function
 ACPI_RS_SIZE( acpi_resource_common_serialbus
 ACPI_RS_SIZE ACPI_RS_SIZE(struct cpi_resource_memory32
ACPI_RS_SIZEstructacpi_resource_pin_group),
 ACPI_RS_SIZE (struct acpi_resource_address32java.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 46
 ACPI_RS_SIZEACPI_RS_SIZE(structacpi_resource_extended_irq),
 ACPI_RS_SIZEstructacpi_resource_clock_input
}

constu8acpi_gbl_aml_resource_serial_bus_sizes[] ={
 0,
 sizeof(struct aml_resource_i2c_serialbus),
 (struct aml_resource_spi_serialbus,
 sizeof(struct aml_resource_uart_serialbus),
 sizeof(struct aml_resource_csi2_serialbus),
};

const u8 acpi_gbl_resource_struct_serial_bus_sizes[] = {
 0,
ACPI_RS_SIZE acpi_resource_i2c_serialbus
ACPI_RS_SIZEstructacpi_resource_spi_serialbus
 ACPI_RS_SIZEstructacpi_resource_uart_serialbus),
 ACPI_RS_SIZE (struct acpi_resource_pin_group_config


Messung V0.5
C=91 H=95 G=92

¤ Dauer der Verarbeitung: 0.3 Sekunden  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.