blob: b3906399918901af2761ee84454eef6dff2a7cf3 [file] [log] [blame]
David Gibson682576d2007-11-13 10:02:29 +11001/dts-v1/;
2
3/ {
David Gibsonf2405272014-05-09 20:48:49 +10004 rref = <&{/}>;
5
David Gibson682576d2007-11-13 10:02:29 +11006 /* Explicit phandles */
7 n1: node1 {
8 linux,phandle = <0x2000>;
David Gibson7c44c2f2007-11-22 17:10:07 +11009 ref = <&{/node2}>; /* reference precedes target */
David Gibson682576d2007-11-13 10:02:29 +110010 lref = <&n2>;
11 };
12 n2: node2 {
David Gibsond75b33a2009-11-26 15:37:13 +110013 phandle = <0x1>;
David Gibson7c44c2f2007-11-22 17:10:07 +110014 ref = <&{/node1}>; /* reference after target */
David Gibson682576d2007-11-13 10:02:29 +110015 lref = <&n1>;
16 };
17
18 /* Implicit phandles */
19 n3: node3 {
David Gibson7c44c2f2007-11-22 17:10:07 +110020 ref = <&{/node4}>;
David Gibson682576d2007-11-13 10:02:29 +110021 lref = <&n4>;
22 };
23 n4: node4 {
24 };
David Gibson9878f302008-11-07 12:49:44 +110025
26 /* Explicit phandle with implicit value */
27 /* This self-reference is the standard way to tag a node as requiring
28 * a phandle (perhaps for reference by nodes that will be dynamically
29 * added) without explicitly allocating it a phandle.
30 * The self-reference requires some special internal handling, though
31 * so check it actually works */
32 n5: node5 {
33 linux,phandle = <&n5>;
David Gibsond75b33a2009-11-26 15:37:13 +110034 phandle = <&n5>;
David Gibson9878f302008-11-07 12:49:44 +110035 };
Thierry Reding73087502019-03-26 16:33:02 +010036
37 node6 {
38 linux,phandle = <0xfffffffe>;
39 phandle = <0xfffffffe>;
40 };
David Gibson682576d2007-11-13 10:02:29 +110041};