diff options
Diffstat (limited to 'include/acpi/amlresrc.h')
| -rw-r--r-- | include/acpi/amlresrc.h | 376 | 
1 files changed, 164 insertions, 212 deletions
diff --git a/include/acpi/amlresrc.h b/include/acpi/amlresrc.h index b20ec303df0..051786e4b21 100644 --- a/include/acpi/amlresrc.h +++ b/include/acpi/amlresrc.h @@ -42,29 +42,27 @@   * POSSIBILITY OF SUCH DAMAGES.   */ -  #ifndef __AMLRESRC_H  #define __AMLRESRC_H -  #define ASL_RESNAME_ADDRESS                     "_ADR"  #define ASL_RESNAME_ALIGNMENT                   "_ALN"  #define ASL_RESNAME_ADDRESSSPACE                "_ASI"  #define ASL_RESNAME_ACCESSSIZE                  "_ASZ"  #define ASL_RESNAME_TYPESPECIFICATTRIBUTES      "_ATT"  #define ASL_RESNAME_BASEADDRESS                 "_BAS" -#define ASL_RESNAME_BUSMASTER                   "_BM_"  /* Master(1), Slave(0) */ +#define ASL_RESNAME_BUSMASTER                   "_BM_"	/* Master(1), Slave(0) */  #define ASL_RESNAME_DECODE                      "_DEC"  #define ASL_RESNAME_DMA                         "_DMA" -#define ASL_RESNAME_DMATYPE                     "_TYP"  /* Compatible(0), A(1), B(2), F(3) */ +#define ASL_RESNAME_DMATYPE                     "_TYP"	/* Compatible(0), A(1), B(2), F(3) */  #define ASL_RESNAME_GRANULARITY                 "_GRA"  #define ASL_RESNAME_INTERRUPT                   "_INT" -#define ASL_RESNAME_INTERRUPTLEVEL              "_LL_"  /* active_lo(1), active_hi(0) */ -#define ASL_RESNAME_INTERRUPTSHARE              "_SHR"  /* Shareable(1), no_share(0) */ -#define ASL_RESNAME_INTERRUPTTYPE               "_HE_"  /* Edge(1), Level(0) */ +#define ASL_RESNAME_INTERRUPTLEVEL              "_LL_"	/* active_lo(1), active_hi(0) */ +#define ASL_RESNAME_INTERRUPTSHARE              "_SHR"	/* Shareable(1), no_share(0) */ +#define ASL_RESNAME_INTERRUPTTYPE               "_HE_"	/* Edge(1), Level(0) */  #define ASL_RESNAME_LENGTH                      "_LEN" -#define ASL_RESNAME_MEMATTRIBUTES               "_MTP"  /* Memory(0), Reserved(1), ACPI(2), NVS(3) */ -#define ASL_RESNAME_MEMTYPE                     "_MEM"  /* non_cache(0), Cacheable(1) Cache+combine(2), Cache+prefetch(3) */ +#define ASL_RESNAME_MEMATTRIBUTES               "_MTP"	/* Memory(0), Reserved(1), ACPI(2), NVS(3) */ +#define ASL_RESNAME_MEMTYPE                     "_MEM"	/* non_cache(0), Cacheable(1) Cache+combine(2), Cache+prefetch(3) */  #define ASL_RESNAME_MAXADDR                     "_MAX"  #define ASL_RESNAME_MINADDR                     "_MIN"  #define ASL_RESNAME_MAXTYPE                     "_MAF" @@ -72,12 +70,11 @@  #define ASL_RESNAME_REGISTERBITOFFSET           "_RBO"  #define ASL_RESNAME_REGISTERBITWIDTH            "_RBW"  #define ASL_RESNAME_RANGETYPE                   "_RNG" -#define ASL_RESNAME_READWRITETYPE               "_RW_"  /* read_only(0), Writeable (1) */ +#define ASL_RESNAME_READWRITETYPE               "_RW_"	/* read_only(0), Writeable (1) */  #define ASL_RESNAME_TRANSLATION                 "_TRA" -#define ASL_RESNAME_TRANSTYPE                   "_TRS"  /* Sparse(1), Dense(0) */ -#define ASL_RESNAME_TYPE                        "_TTP"  /* Translation(1), Static (0) */ -#define ASL_RESNAME_XFERTYPE                    "_SIz"  /* 8(0), 8_and16(1), 16(2) */ - +#define ASL_RESNAME_TRANSTYPE                   "_TRS"	/* Sparse(1), Dense(0) */ +#define ASL_RESNAME_TYPE                        "_TTP"	/* Translation(1), Static (0) */ +#define ASL_RESNAME_XFERTYPE                    "_SIz"	/* 8(0), 8_and16(1), 16(2) */  /* Default sizes for "small" resource descriptors */ @@ -89,15 +86,12 @@  #define ASL_RDESC_FIXED_IO_SIZE                 0x03  #define ASL_RDESC_END_TAG_SIZE                  0x01 - -struct asl_resource_node -{ -	u32                                 buffer_length; -	void                                *buffer; -	struct asl_resource_node            *next; +struct asl_resource_node { +	u32 buffer_length; +	void *buffer; +	struct asl_resource_node *next;  }; -  /*   * Resource descriptors defined in the ACPI specification.   * @@ -106,214 +100,175 @@ struct asl_resource_node   */  #pragma pack(1) -struct asl_irq_format_desc -{ -	u8                                  descriptor_type; -	u16                                 irq_mask; -	u8                                  flags; +struct asl_irq_format_desc { +	u8 descriptor_type; +	u16 irq_mask; +	u8 flags;  }; - -struct asl_irq_noflags_desc -{ -	u8                                  descriptor_type; -	u16                                 irq_mask; +struct asl_irq_noflags_desc { +	u8 descriptor_type; +	u16 irq_mask;  }; - -struct asl_dma_format_desc -{ -	u8                                  descriptor_type; -	u8                                  dma_channel_mask; -	u8                                  flags; +struct asl_dma_format_desc { +	u8 descriptor_type; +	u8 dma_channel_mask; +	u8 flags;  }; - -struct asl_start_dependent_desc -{ -	u8                                  descriptor_type; -	u8                                  flags; +struct asl_start_dependent_desc { +	u8 descriptor_type; +	u8 flags;  }; - -struct asl_start_dependent_noprio_desc -{ -	u8                                  descriptor_type; +struct asl_start_dependent_noprio_desc { +	u8 descriptor_type;  }; - -struct asl_end_dependent_desc -{ -	u8                                  descriptor_type; +struct asl_end_dependent_desc { +	u8 descriptor_type;  }; - -struct asl_io_port_desc -{ -	u8                                  descriptor_type; -	u8                                  information; -	u16                                 address_min; -	u16                                 address_max; -	u8                                  alignment; -	u8                                  length; +struct asl_io_port_desc { +	u8 descriptor_type; +	u8 information; +	u16 address_min; +	u16 address_max; +	u8 alignment; +	u8 length;  }; - -struct asl_fixed_io_port_desc -{ -	u8                                  descriptor_type; -	u16                                 base_address; -	u8                                  length; +struct asl_fixed_io_port_desc { +	u8 descriptor_type; +	u16 base_address; +	u8 length;  }; - -struct asl_small_vendor_desc -{ -	u8                                  descriptor_type; -	u8                                  vendor_defined[7]; +struct asl_small_vendor_desc { +	u8 descriptor_type; +	u8 vendor_defined[7];  }; - -struct asl_end_tag_desc -{ -	u8                                  descriptor_type; -	u8                                  checksum; +struct asl_end_tag_desc { +	u8 descriptor_type; +	u8 checksum;  }; -  /* LARGE descriptors */ -struct asl_memory_24_desc -{ -	u8                                  descriptor_type; -	u16                                 length; -	u8                                  information; -	u16                                 address_min; -	u16                                 address_max; -	u16                                 alignment; -	u16                                 range_length; +struct asl_memory_24_desc { +	u8 descriptor_type; +	u16 length; +	u8 information; +	u16 address_min; +	u16 address_max; +	u16 alignment; +	u16 range_length;  }; - -struct asl_large_vendor_desc -{ -	u8                                  descriptor_type; -	u16                                 length; -	u8                                  vendor_defined[1]; +struct asl_large_vendor_desc { +	u8 descriptor_type; +	u16 length; +	u8 vendor_defined[1];  }; - -struct asl_memory_32_desc -{ -	u8                                  descriptor_type; -	u16                                 length; -	u8                                  information; -	u32                                 address_min; -	u32                                 address_max; -	u32                                 alignment; -	u32                                 range_length; +struct asl_memory_32_desc { +	u8 descriptor_type; +	u16 length; +	u8 information; +	u32 address_min; +	u32 address_max; +	u32 alignment; +	u32 range_length;  }; - -struct asl_fixed_memory_32_desc -{ -	u8                                  descriptor_type; -	u16                                 length; -	u8                                  information; -	u32                                 base_address; -	u32                                 range_length; +struct asl_fixed_memory_32_desc { +	u8 descriptor_type; +	u16 length; +	u8 information; +	u32 base_address; +	u32 range_length;  }; - -struct asl_extended_address_desc -{ -	u8                                  descriptor_type; -	u16                                 length; -	u8                                  resource_type; -	u8                                  flags; -	u8                                  specific_flags; -	u8                                  revision_iD; -	u8                                  reserved; -	u64                                 granularity; -	u64                                 address_min; -	u64                                 address_max; -	u64                                 translation_offset; -	u64                                 address_length; -	u64                                 type_specific_attributes; -	u8                                  optional_fields[2]; /* Used for length calculation only */ +struct asl_extended_address_desc { +	u8 descriptor_type; +	u16 length; +	u8 resource_type; +	u8 flags; +	u8 specific_flags; +	u8 revision_iD; +	u8 reserved; +	u64 granularity; +	u64 address_min; +	u64 address_max; +	u64 translation_offset; +	u64 address_length; +	u64 type_specific_attributes; +	u8 optional_fields[2];	/* Used for length calculation only */  }; -#define ASL_EXTENDED_ADDRESS_DESC_REVISION          1       /* ACPI 3.0 */ - +#define ASL_EXTENDED_ADDRESS_DESC_REVISION          1	/* ACPI 3.0 */ -struct asl_qword_address_desc -{ -	u8                                  descriptor_type; -	u16                                 length; -	u8                                  resource_type; -	u8                                  flags; -	u8                                  specific_flags; -	u64                                 granularity; -	u64                                 address_min; -	u64                                 address_max; -	u64                                 translation_offset; -	u64                                 address_length; -	u8                                  optional_fields[2]; +struct asl_qword_address_desc { +	u8 descriptor_type; +	u16 length; +	u8 resource_type; +	u8 flags; +	u8 specific_flags; +	u64 granularity; +	u64 address_min; +	u64 address_max; +	u64 translation_offset; +	u64 address_length; +	u8 optional_fields[2];  }; - -struct asl_dword_address_desc -{ -	u8                                  descriptor_type; -	u16                                 length; -	u8                                  resource_type; -	u8                                  flags; -	u8                                  specific_flags; -	u32                                 granularity; -	u32                                 address_min; -	u32                                 address_max; -	u32                                 translation_offset; -	u32                                 address_length; -	u8                                  optional_fields[2]; +struct asl_dword_address_desc { +	u8 descriptor_type; +	u16 length; +	u8 resource_type; +	u8 flags; +	u8 specific_flags; +	u32 granularity; +	u32 address_min; +	u32 address_max; +	u32 translation_offset; +	u32 address_length; +	u8 optional_fields[2];  }; - -struct asl_word_address_desc -{ -	u8                                  descriptor_type; -	u16                                 length; -	u8                                  resource_type; -	u8                                  flags; -	u8                                  specific_flags; -	u16                                 granularity; -	u16                                 address_min; -	u16                                 address_max; -	u16                                 translation_offset; -	u16                                 address_length; -	u8                                  optional_fields[2]; +struct asl_word_address_desc { +	u8 descriptor_type; +	u16 length; +	u8 resource_type; +	u8 flags; +	u8 specific_flags; +	u16 granularity; +	u16 address_min; +	u16 address_max; +	u16 translation_offset; +	u16 address_length; +	u8 optional_fields[2];  }; - -struct asl_extended_xrupt_desc -{ -	u8                                  descriptor_type; -	u16                                 length; -	u8                                  flags; -	u8                                  table_length; -	u32                                 interrupt_number[1]; +struct asl_extended_xrupt_desc { +	u8 descriptor_type; +	u16 length; +	u8 flags; +	u8 table_length; +	u32 interrupt_number[1];  	/* res_source_index, res_source optional fields follow */  }; - -struct asl_general_register_desc -{ -	u8                                  descriptor_type; -	u16                                 length; -	u8                                  address_space_id; -	u8                                  bit_width; -	u8                                  bit_offset; -	u8                                  access_size; /* ACPI 3.0, was Reserved */ -	u64                                 address; +struct asl_general_register_desc { +	u8 descriptor_type; +	u16 length; +	u8 address_space_id; +	u8 bit_width; +	u8 bit_offset; +	u8 access_size;		/* ACPI 3.0, was Reserved */ +	u64 address;  };  /* restore default alignment */ @@ -322,32 +277,29 @@ struct asl_general_register_desc  /* Union of all resource descriptors, so we can allocate the worst case */ -union asl_resource_desc -{ -	struct asl_irq_format_desc          irq; -	struct asl_dma_format_desc          dma; -	struct asl_start_dependent_desc     std; -	struct asl_end_dependent_desc       end; -	struct asl_io_port_desc             iop; -	struct asl_fixed_io_port_desc       fio; -	struct asl_small_vendor_desc        smv; -	struct asl_end_tag_desc             et; +union asl_resource_desc { +	struct asl_irq_format_desc irq; +	struct asl_dma_format_desc dma; +	struct asl_start_dependent_desc std; +	struct asl_end_dependent_desc end; +	struct asl_io_port_desc iop; +	struct asl_fixed_io_port_desc fio; +	struct asl_small_vendor_desc smv; +	struct asl_end_tag_desc et; -	struct asl_memory_24_desc           M24; -	struct asl_large_vendor_desc        lgv; -	struct asl_memory_32_desc           M32; -	struct asl_fixed_memory_32_desc     F32; -	struct asl_qword_address_desc       qas; -	struct asl_dword_address_desc       das; -	struct asl_word_address_desc        was; -	struct asl_extended_address_desc    eas; -	struct asl_extended_xrupt_desc      exx; -	struct asl_general_register_desc    grg; -	u32                                 u32_item; -	u16                                 u16_item; -	u8                                  U8item; +	struct asl_memory_24_desc M24; +	struct asl_large_vendor_desc lgv; +	struct asl_memory_32_desc M32; +	struct asl_fixed_memory_32_desc F32; +	struct asl_qword_address_desc qas; +	struct asl_dword_address_desc das; +	struct asl_word_address_desc was; +	struct asl_extended_address_desc eas; +	struct asl_extended_xrupt_desc exx; +	struct asl_general_register_desc grg; +	u32 u32_item; +	u16 u16_item; +	u8 U8item;  }; -  #endif -  |