diff options
author | Rob Herring <robh@kernel.org> | 2018-05-08 14:07:49 -0400 |
---|---|---|
committer | Rob Herring <robh@kernel.org> | 2018-05-14 20:45:01 -0400 |
commit | 50aafd60898a8b3edf2f60e014a8288da3b2e5e3 (patch) | |
tree | 9bbb9713e3cc6e0c2e3cea71943e9338b937e0b7 /scripts/dtc/livetree.c | |
parent | 9601000cd57e395b56642596903f59d61d91e176 (diff) |
scripts/dtc: Update to upstream version v1.4.6-21-g84e414b0b5bc
This adds the following commits from upstream:
84e414b0b5bc tests: Add a test case for the omit-if-no-ref keyword
4038fd90056e dtc: add ability to make nodes conditional on them being referenced
e1f139ea4900 checks: drop warning for missing PCI bridge bus-range
f4eba68d89ee checks: Print duplicate node name instead of parent name
46df1fb1b211 .travis.yml: Run valgrind checks via Travis
14a3002a1aee tests: Update valgrind suppressions for sw_tree1
02c5fe9debc0 tests: Remove valgrind error from tests/get_path
df536831d02c checks: add graph binding checks
2347c96edcbe checks: add a check for duplicate unit-addresses of child nodes
8f1b35f88395 Correct overlay syntactic sugar for generating target-path fragments
afbddcd418fb Suppress warnings on overlay fragments
119e27300359 Improve tests for dtc overlay generation
Signed-off-by: Rob Herring <robh@kernel.org>
Diffstat (limited to 'scripts/dtc/livetree.c')
-rw-r--r-- | scripts/dtc/livetree.c | 26 |
1 files changed, 23 insertions, 3 deletions
diff --git a/scripts/dtc/livetree.c b/scripts/dtc/livetree.c index 57b7db2ed153..6e4c367f54b3 100644 --- a/scripts/dtc/livetree.c +++ b/scripts/dtc/livetree.c | |||
@@ -134,6 +134,20 @@ struct node *name_node(struct node *node, char *name) | |||
134 | return node; | 134 | return node; |
135 | } | 135 | } |
136 | 136 | ||
137 | struct node *omit_node_if_unused(struct node *node) | ||
138 | { | ||
139 | node->omit_if_unused = 1; | ||
140 | |||
141 | return node; | ||
142 | } | ||
143 | |||
144 | struct node *reference_node(struct node *node) | ||
145 | { | ||
146 | node->is_referenced = 1; | ||
147 | |||
148 | return node; | ||
149 | } | ||
150 | |||
137 | struct node *merge_nodes(struct node *old_node, struct node *new_node) | 151 | struct node *merge_nodes(struct node *old_node, struct node *new_node) |
138 | { | 152 | { |
139 | struct property *new_prop, *old_prop; | 153 | struct property *new_prop, *old_prop; |
@@ -224,10 +238,16 @@ struct node * add_orphan_node(struct node *dt, struct node *new_node, char *ref) | |||
224 | struct data d = empty_data; | 238 | struct data d = empty_data; |
225 | char *name; | 239 | char *name; |
226 | 240 | ||
227 | d = data_add_marker(d, REF_PHANDLE, ref); | 241 | if (ref[0] == '/') { |
228 | d = data_append_integer(d, 0xffffffff, 32); | 242 | d = data_append_data(d, ref, strlen(ref) + 1); |
229 | 243 | ||
230 | p = build_property("target", d); | 244 | p = build_property("target-path", d); |
245 | } else { | ||
246 | d = data_add_marker(d, REF_PHANDLE, ref); | ||
247 | d = data_append_integer(d, 0xffffffff, 32); | ||
248 | |||
249 | p = build_property("target", d); | ||
250 | } | ||
231 | 251 | ||
232 | xasprintf(&name, "fragment@%u", | 252 | xasprintf(&name, "fragment@%u", |
233 | next_orphan_fragment++); | 253 | next_orphan_fragment++); |