diff --git a/src/acpi/aml/namedobj.rs b/src/acpi/aml/namedobj.rs index 8a9f978..8589d6f 100644 --- a/src/acpi/aml/namedobj.rs +++ b/src/acpi/aml/namedobj.rs @@ -193,6 +193,18 @@ impl AmlExecutable for NamedObj { obj_list: local_namespace }); }, + NamedObj::DefPowerRes { ref name, system_level, resource_order, ref obj_list } => { + let local_scope_string = get_namespace_string(scope, name.clone()); + + let mut local_namespace = BTreeMap::new(); + obj_list.execute(&mut local_namespace, String::new()); + + namespace.insert(local_scope_string, AmlValue::PowerResource { + system_level, + resource_order, + obj_list: local_namespace + }); + }, _ => () } diff --git a/src/acpi/aml/namespace.rs b/src/acpi/aml/namespace.rs index fc801fc..5d725da 100644 --- a/src/acpi/aml/namespace.rs +++ b/src/acpi/aml/namespace.rs @@ -36,7 +36,11 @@ pub enum AmlValue { }, Package(Vec), String(String), - PowerResource, + PowerResource { + system_level: u8, + resource_order: u16, + obj_list: BTreeMap + }, Processor { proc_id: u8, p_blk: Option,