Documentation: ACPI: Direct references are allowed to devices only
authorSakari Ailus <sakari.ailus@linux.intel.com>
Fri, 10 May 2019 09:46:03 +0000 (12:46 +0300)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Mon, 13 May 2019 08:40:21 +0000 (10:40 +0200)
In ACPI it is possible to make references to device objects only,
not to other objects inside a device.

In practice this means that hierarchical data extension targets
must be in parentheses to make them strings, or an ACPICA warning
will be produced.

Reported-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
[ rjw: Changelog ]
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Documentation/firmware-guide/acpi/dsd/data-node-references.rst
Documentation/firmware-guide/acpi/dsd/graph.rst

index 1351984e767c8c69dda03cdd968f61c0d0452ff8..febccbc5689d089d7f7ca064cc275b1681156af9 100644 (file)
@@ -45,8 +45,8 @@ the ANOD object which is also the final target node of the reference.
            Name (_DSD, Package () {
                ToUUID("dbb8e3e6-5886-4ba6-8795-1319f52a966b"),
                Package () {
-                   Package () { "node@0", NOD0 },
-                   Package () { "node@1", NOD1 },
+                   Package () { "node@0", "NOD0" },
+                   Package () { "node@1", "NOD1" },
                }
            })
            Name (NOD0, Package() {
@@ -58,7 +58,7 @@ the ANOD object which is also the final target node of the reference.
            Name (NOD1, Package() {
                ToUUID("dbb8e3e6-5886-4ba6-8795-1319f52a966b"),
                Package () {
-                   Package () { "anothernode", ANOD },
+                   Package () { "anothernode", "ANOD" },
                }
            })
            Name (ANOD, Package() {
index 8a9019a38b66d2f68f3faaeee964c898c52651ff..1a6ce7afba5ead79edb91c0c8a179cb20f058104 100644 (file)
@@ -45,7 +45,7 @@ with "port" and must be followed by the "@" character and the number of the
 port as its key. The target object it refers to should be called "PRTX", where
 "X" is the number of the port. An example of such a package would be::
 
-    Package() { "port@4", PRT4 }
+    Package() { "port@4", "PRT4" }
 
 Further on, endpoints are located under the port nodes. The hierarchical
 data extension key of the endpoint nodes must begin with
@@ -54,7 +54,7 @@ endpoint. The object it refers to should be called "EPXY", where "X" is the
 number of the port and "Y" is the number of the endpoint. An example of such a
 package would be::
 
-    Package() { "endpoint@0", EP40 }
+    Package() { "endpoint@0", "EP40" }
 
 Each port node contains a property extension key "port", the value of which is
 the number of the port. Each endpoint is similarly numbered with a property
@@ -91,7 +91,7 @@ A simple example of this is show below::
                },
                ToUUID("dbb8e3e6-5886-4ba6-8795-1319f52a966b"),
                Package () {
-                   Package () { "port@0", PRT0 },
+                   Package () { "port@0", "PRT0" },
                }
            })
            Name (PRT0, Package() {
@@ -101,7 +101,7 @@ A simple example of this is show below::
                },
                ToUUID("dbb8e3e6-5886-4ba6-8795-1319f52a966b"),
                Package () {
-                   Package () { "endpoint@0", EP00 },
+                   Package () { "endpoint@0", "EP00" },
                }
            })
            Name (EP00, Package() {
@@ -121,7 +121,7 @@ A simple example of this is show below::
            Name (_DSD, Package () {
                ToUUID("dbb8e3e6-5886-4ba6-8795-1319f52a966b"),
                Package () {
-                   Package () { "port@4", PRT4 },
+                   Package () { "port@4", "PRT4" },
                }
            })
 
@@ -132,7 +132,7 @@ A simple example of this is show below::
                },
                ToUUID("dbb8e3e6-5886-4ba6-8795-1319f52a966b"),
                Package () {
-                   Package () { "endpoint@0", EP40 },
+                   Package () { "endpoint@0", "EP40" },
                }
            })