⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 actypes.h

📁 acpi tools for linux include acpiexec and acpixtract
💻 H
📖 第 1 页 / 共 4 页
字号:
#define ACPI_TYPE_B                     (UINT8) 0x02#define ACPI_TYPE_F                     (UINT8) 0x03#define ACPI_NOT_BUS_MASTER             (UINT8) 0x00#define ACPI_BUS_MASTER                 (UINT8) 0x01#define ACPI_TRANSFER_8                 (UINT8) 0x00#define ACPI_TRANSFER_8_16              (UINT8) 0x01#define ACPI_TRANSFER_16                (UINT8) 0x02/* * Start Dependent Functions Priority definitions */#define ACPI_GOOD_CONFIGURATION         (UINT8) 0x00#define ACPI_ACCEPTABLE_CONFIGURATION   (UINT8) 0x01#define ACPI_SUB_OPTIMAL_CONFIGURATION  (UINT8) 0x02/* *  16, 32 and 64-bit Address Descriptor resource types */#define ACPI_MEMORY_RANGE               (UINT8) 0x00#define ACPI_IO_RANGE                   (UINT8) 0x01#define ACPI_BUS_NUMBER_RANGE           (UINT8) 0x02#define ACPI_ADDRESS_NOT_FIXED          (UINT8) 0x00#define ACPI_ADDRESS_FIXED              (UINT8) 0x01#define ACPI_POS_DECODE                 (UINT8) 0x00#define ACPI_SUB_DECODE                 (UINT8) 0x01#define ACPI_PRODUCER                   (UINT8) 0x00#define ACPI_CONSUMER                   (UINT8) 0x01/* * If possible, pack the following structures to byte alignment */#ifndef ACPI_MISALIGNMENT_NOT_SUPPORTED#pragma pack(1)#endif/* UUID data structures for use in vendor-defined resource descriptors */typedef struct acpi_uuid{    UINT8                           Data[ACPI_UUID_LENGTH];} ACPI_UUID;typedef struct acpi_vendor_uuid{    UINT8                           Subtype;    UINT8                           Data[ACPI_UUID_LENGTH];} ACPI_VENDOR_UUID;/* *  Structures used to describe device resources */typedef struct acpi_resource_irq{    UINT8                           DescriptorLength;    UINT8                           Triggering;    UINT8                           Polarity;    UINT8                           Sharable;    UINT8                           InterruptCount;    UINT8                           Interrupts[1];} ACPI_RESOURCE_IRQ;typedef struct ACPI_RESOURCE_DMA{    UINT8                           Type;    UINT8                           BusMaster;    UINT8                           Transfer;    UINT8                           ChannelCount;    UINT8                           Channels[1];} ACPI_RESOURCE_DMA;typedef struct acpi_resource_start_dependent{    UINT8                           DescriptorLength;    UINT8                           CompatibilityPriority;    UINT8                           PerformanceRobustness;} ACPI_RESOURCE_START_DEPENDENT;/* * END_DEPENDENT_FUNCTIONS_RESOURCE struct is not * needed because it has no fields */typedef struct acpi_resource_io{    UINT8                           IoDecode;    UINT8                           Alignment;    UINT8                           AddressLength;    UINT16                          Minimum;    UINT16                          Maximum;} ACPI_RESOURCE_IO;typedef struct acpi_resource_fixed_io{    UINT16                          Address;    UINT8                           AddressLength;} ACPI_RESOURCE_FIXED_IO;typedef struct acpi_resource_vendor{    UINT16                          ByteLength;    UINT8                           ByteData[1];} ACPI_RESOURCE_VENDOR;/* Vendor resource with UUID info (introduced in ACPI 3.0) */typedef struct acpi_resource_vendor_typed{    UINT16                          ByteLength;    UINT8                           UuidSubtype;    UINT8                           Uuid[ACPI_UUID_LENGTH];    UINT8                           ByteData[1];} ACPI_RESOURCE_VENDOR_TYPED;typedef struct acpi_resource_end_tag{    UINT8                           Checksum;} ACPI_RESOURCE_END_TAG;typedef struct acpi_resource_memory24{    UINT8                           WriteProtect;    UINT16                          Minimum;    UINT16                          Maximum;    UINT16                          Alignment;    UINT16                          AddressLength;} ACPI_RESOURCE_MEMORY24;typedef struct acpi_resource_memory32{    UINT8                           WriteProtect;    UINT32                          Minimum;    UINT32                          Maximum;    UINT32                          Alignment;    UINT32                          AddressLength;} ACPI_RESOURCE_MEMORY32;typedef struct acpi_resource_fixed_memory32{    UINT8                           WriteProtect;    UINT32                          Address;    UINT32                          AddressLength;} ACPI_RESOURCE_FIXED_MEMORY32;typedef struct acpi_memory_attribute{    UINT8                           WriteProtect;    UINT8                           Caching;    UINT8                           RangeType;    UINT8                           Translation;} ACPI_MEMORY_ATTRIBUTE;typedef struct acpi_io_attribute{    UINT8                           RangeType;    UINT8                           Translation;    UINT8                           TranslationType;    UINT8                           Reserved1;} ACPI_IO_ATTRIBUTE;typedef union acpi_resource_attribute{    ACPI_MEMORY_ATTRIBUTE           Mem;    ACPI_IO_ATTRIBUTE               Io;    /* Used for the *WordSpace macros */    UINT8                           TypeSpecific;} ACPI_RESOURCE_ATTRIBUTE;typedef struct acpi_resource_source{    UINT8                           Index;    UINT16                          StringLength;    char                            *StringPtr;} ACPI_RESOURCE_SOURCE;/* Fields common to all address descriptors, 16/32/64 bit */#define ACPI_RESOURCE_ADDRESS_COMMON \    UINT8                           ResourceType; \    UINT8                           ProducerConsumer; \    UINT8                           Decode; \    UINT8                           MinAddressFixed; \    UINT8                           MaxAddressFixed; \    ACPI_RESOURCE_ATTRIBUTE         Info;typedef struct acpi_resource_address{    ACPI_RESOURCE_ADDRESS_COMMON} ACPI_RESOURCE_ADDRESS;typedef struct acpi_resource_address16{    ACPI_RESOURCE_ADDRESS_COMMON    UINT16                          Granularity;    UINT16                          Minimum;    UINT16                          Maximum;    UINT16                          TranslationOffset;    UINT16                          AddressLength;    ACPI_RESOURCE_SOURCE            ResourceSource;} ACPI_RESOURCE_ADDRESS16;typedef struct acpi_resource_address32{    ACPI_RESOURCE_ADDRESS_COMMON    UINT32                          Granularity;    UINT32                          Minimum;    UINT32                          Maximum;    UINT32                          TranslationOffset;    UINT32                          AddressLength;    ACPI_RESOURCE_SOURCE            ResourceSource;} ACPI_RESOURCE_ADDRESS32;typedef struct acpi_resource_address64{    ACPI_RESOURCE_ADDRESS_COMMON    UINT64                          Granularity;    UINT64                          Minimum;    UINT64                          Maximum;    UINT64                          TranslationOffset;    UINT64                          AddressLength;    ACPI_RESOURCE_SOURCE            ResourceSource;} ACPI_RESOURCE_ADDRESS64;typedef struct acpi_resource_extended_address64{    ACPI_RESOURCE_ADDRESS_COMMON    UINT8                           RevisionID;    UINT64                          Granularity;    UINT64                          Minimum;    UINT64                          Maximum;    UINT64                          TranslationOffset;    UINT64                          AddressLength;    UINT64                          TypeSpecific;} ACPI_RESOURCE_EXTENDED_ADDRESS64;typedef struct acpi_resource_extended_irq{    UINT8                           ProducerConsumer;    UINT8                           Triggering;    UINT8                           Polarity;    UINT8                           Sharable;    UINT8                           InterruptCount;    ACPI_RESOURCE_SOURCE            ResourceSource;    UINT32                          Interrupts[1];} ACPI_RESOURCE_EXTENDED_IRQ;typedef struct acpi_resource_generic_register{    UINT8                           SpaceId;    UINT8                           BitWidth;    UINT8                           BitOffset;    UINT8                           AccessSize;    UINT64                          Address;} ACPI_RESOURCE_GENERIC_REGISTER;/* ACPI_RESOURCE_TYPEs */#define ACPI_RESOURCE_TYPE_IRQ                  0#define ACPI_RESOURCE_TYPE_DMA                  1#define ACPI_RESOURCE_TYPE_START_DEPENDENT      2#define ACPI_RESOURCE_TYPE_END_DEPENDENT        3#define ACPI_RESOURCE_TYPE_IO                   4#define ACPI_RESOURCE_TYPE_FIXED_IO             5#define ACPI_RESOURCE_TYPE_VENDOR               6#define ACPI_RESOURCE_TYPE_END_TAG              7#define ACPI_RESOURCE_TYPE_MEMORY24             8#define ACPI_RESOURCE_TYPE_MEMORY32             9#define ACPI_RESOURCE_TYPE_FIXED_MEMORY32       10#define ACPI_RESOURCE_TYPE_ADDRESS16            11#define ACPI_RESOURCE_TYPE_ADDRESS32            12#define ACPI_RESOURCE_TYPE_ADDRESS64            13#define ACPI_RESOURCE_TYPE_EXTENDED_ADDRESS64   14  /* ACPI 3.0 */#define ACPI_RESOURCE_TYPE_EXTENDED_IRQ         15#define ACPI_RESOURCE_TYPE_GENERIC_REGISTER     16#define ACPI_RESOURCE_TYPE_MAX                  16typedef union acpi_resource_data{    ACPI_RESOURCE_IRQ                       Irq;    ACPI_RESOURCE_DMA                       Dma;    ACPI_RESOURCE_START_DEPENDENT           StartDpf;    ACPI_RESOURCE_IO                        Io;    ACPI_RESOURCE_FIXED_IO                  FixedIo;    ACPI_RESOURCE_VENDOR                    Vendor;    ACPI_RESOURCE_VENDOR_TYPED              VendorTyped;    ACPI_RESOURCE_END_TAG                   EndTag;    ACPI_RESOURCE_MEMORY24                  Memory24;    ACPI_RESOURCE_MEMORY32                  Memory32;    ACPI_RESOURCE_FIXED_MEMORY32            FixedMemory32;    ACPI_RESOURCE_ADDRESS16                 Address16;    ACPI_RESOURCE_ADDRESS32                 Address32;    ACPI_RESOURCE_ADDRESS64                 Address64;    ACPI_RESOURCE_EXTENDED_ADDRESS64        ExtAddress64;    ACPI_RESOURCE_EXTENDED_IRQ              ExtendedIrq;    ACPI_RESOURCE_GENERIC_REGISTER          GenericReg;    /* Common fields */    ACPI_RESOURCE_ADDRESS                   Address;        /* Common 16/32/64 address fields */} ACPI_RESOURCE_DATA;typedef struct acpi_resource{    UINT32                          Type;    UINT32                          Length;    ACPI_RESOURCE_DATA              Data;} ACPI_RESOURCE;/* restore default alignment */#pragma pack()#define ACPI_RS_SIZE_MIN                    12#define ACPI_RS_SIZE_NO_DATA                8       /* Id + Length fields */#define ACPI_RS_SIZE(Type)                  (UINT32) (ACPI_RS_SIZE_NO_DATA + sizeof (Type))#define ACPI_NEXT_RESOURCE(Res)             (ACPI_RESOURCE *)((UINT8 *) Res + Res->Length)typedef struct acpi_pci_routing_table{    UINT32                          Length;    UINT32                          Pin;    ACPI_INTEGER                    Address;        /* here for 64-bit alignment */    UINT32                          SourceIndex;    char                            Source[4];      /* pad to 64 bits so sizeof() works in all cases */} ACPI_PCI_ROUTING_TABLE;#endif /* __ACTYPES_H__ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -