ACPICA: iASL/Disassembler: Add support for hardware summary mapfiles.

Adds support for both iASL and the disassembler to create a hardware
and connection summary mapfile (via the -lm option.)

Linux isn't affected by this patch because iASL is not in the Linux
upstream.

Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Lv Zheng <lv.zheng@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
This commit is contained in:
Bob Moore 2014-10-10 10:40:11 +08:00 committed by Rafael J. Wysocki
parent 2f8572344e
commit f2d348fac7
1 changed files with 34 additions and 0 deletions

View File

@ -117,6 +117,12 @@ struct asl_resource_node {
struct asl_resource_node *next;
};
struct asl_resource_info {
union acpi_parse_object *descriptor_type_op; /* Resource descriptor parse node */
union acpi_parse_object *mapping_op; /* Used for mapfile support */
u32 current_byte_offset; /* Offset in resource template */
};
/* Macros used to generate AML resource length fields */
#define ACPI_AML_SIZE_LARGE(r) (sizeof (r) - sizeof (struct aml_resource_large_header))
@ -449,4 +455,32 @@ union aml_resource {
u8 byte_item;
};
/* Interfaces used by both the disassembler and compiler */
void
mp_save_gpio_info(union acpi_parse_object *op,
union aml_resource *resource,
u32 pin_count, u16 *pin_list, char *device_name);
void
mp_save_serial_info(union acpi_parse_object *op,
union aml_resource *resource, char *device_name);
char *mp_get_hid_from_parse_tree(struct acpi_namespace_node *hid_node);
char *mp_get_hid_via_namestring(char *device_name);
char *mp_get_connection_info(union acpi_parse_object *op,
u32 pin_index,
struct acpi_namespace_node **target_node,
char **target_name);
char *mp_get_parent_device_hid(union acpi_parse_object *op,
struct acpi_namespace_node **target_node,
char **parent_device_name);
char *mp_get_ddn_value(char *device_name);
char *mp_get_hid_value(struct acpi_namespace_node *device_node);
#endif