ACPICA: acpiexec: initialize all simple types and field units from user input

ACPICA commit 367b363edc5fa1f93bbc14e4a1e05f34fef765a2

acpiexec allows a user to provide a file that indicates values to
initialize named objects during table load with the -fi option. This
can provide more accurate simulation by setting named objects to
values found during OS runtime.

Previously, this option only supported integer objects. This change
adds user initialization support for field units, strings, buffers,
and packages.

Link: https://github.com/acpica/acpica/commit/367b363e
Signed-off-by: Erik Schmauss <erik.schmauss@intel.com>
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
This commit is contained in:
Erik Schmauss 2019-10-25 14:36:58 -07:00 committed by Rafael J. Wysocki
parent 7609350642
commit 02b04f10b8

View File

@ -263,7 +263,6 @@ acpi_ds_get_field_names(struct acpi_create_field_info *info,
union acpi_parse_object *child; union acpi_parse_object *child;
#ifdef ACPI_EXEC_APP #ifdef ACPI_EXEC_APP
u64 value = 0;
union acpi_operand_object *result_desc; union acpi_operand_object *result_desc;
union acpi_operand_object *obj_desc; union acpi_operand_object *obj_desc;
char *name_path; char *name_path;
@ -405,19 +404,17 @@ acpi_ds_get_field_names(struct acpi_create_field_info *info,
name_path = name_path =
acpi_ns_get_external_pathname(info-> acpi_ns_get_external_pathname(info->
field_node); field_node);
obj_desc =
acpi_ut_create_integer_object
(value);
if (ACPI_SUCCESS if (ACPI_SUCCESS
(ae_lookup_init_file_entry (ae_lookup_init_file_entry
(name_path, &value))) { (name_path, &obj_desc))) {
acpi_ex_write_data_to_field acpi_ex_write_data_to_field
(obj_desc, (obj_desc,
acpi_ns_get_attached_object acpi_ns_get_attached_object
(info->field_node), (info->field_node),
&result_desc); &result_desc);
acpi_ut_remove_reference
(obj_desc);
} }
acpi_ut_remove_reference(obj_desc);
ACPI_FREE(name_path); ACPI_FREE(name_path);
#endif #endif
} }