diff options
Diffstat (limited to 'Documentation/acpi')
-rw-r--r-- | Documentation/acpi/dsd/data-node-references.txt | 31 |
1 files changed, 25 insertions, 6 deletions
diff --git a/Documentation/acpi/dsd/data-node-references.txt b/Documentation/acpi/dsd/data-node-references.txt index 00c3b5fe1f2e..6e9a5f925edd 100644 --- a/Documentation/acpi/dsd/data-node-references.txt +++ b/Documentation/acpi/dsd/data-node-references.txt @@ -15,24 +15,43 @@ extension node which is referred to by the key shall lie directly under the parent object i.e. either the device object or another hierarchical data extension node. +The keys in the hierarchical data nodes shall consist of the name of the node, +"@" character and the number of the node in hexadecimal notation (without pre- +or postfixes). The same ACPI object shall include the _DSD property extension +with a property "reg" that shall have the same numerical value as the number of +the node. + +In case a hierarchical data extensions node has no numerical value, then the +"reg" property shall be omitted from the ACPI object's _DSD properties and the +"@" character and the number shall be omitted from the hierarchical data +extension key. + + Example ------- In the ASL snippet below, the "reference" _DSD property [2] contains a device object reference to DEV0 and under that device object, a - hierarchical data extension key "node" referring to the NODE object and - lastly, a hierarchical data extension key "anothernode" referring to the - ANOD object which is also the final target of the reference. + hierarchical data extension key "node@1" referring to the NOD1 object + and lastly, a hierarchical data extension key "anothernode" referring to + the ANOD object which is also the final target node of the reference. Device (DEV0) { Name (_DSD, Package () { ToUUID("dbb8e3e6-5886-4ba6-8795-1319f52a966b"), Package () { - Package () { "node", NODE }, + Package () { "node@0", NOD0 }, + Package () { "node@1", NOD1 }, + } + }) + Name (NOD0, Package() { + ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"), + Package () { + Package () { "random-property", 3 }, } }) - Name (NODE, Package() { + Name (NOD1, Package() { ToUUID("dbb8e3e6-5886-4ba6-8795-1319f52a966b"), Package () { Package () { "anothernode", ANOD }, @@ -51,7 +70,7 @@ Example Name (_DSD, Package () { ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"), Package () { - Package () { "reference", ^DEV0, "node", "anothernode" }, + Package () { "reference", ^DEV0, "node@1", "anothernode" }, } }) } |