Searched refs:fdt (Results 1 - 62 of 62) sorted by relevance

/linux-4.4.14/scripts/dtc/libfdt/
H A Dfdt_sw.c53 #include <fdt.h>
58 static int _fdt_sw_check_header(void *fdt) _fdt_sw_check_header() argument
60 if (fdt_magic(fdt) != FDT_SW_MAGIC) _fdt_sw_check_header()
66 #define FDT_SW_CHECK_HEADER(fdt) \
69 if ((err = _fdt_sw_check_header(fdt)) != 0) \
73 static void *_fdt_grab_space(void *fdt, size_t len) _fdt_grab_space() argument
75 int offset = fdt_size_dt_struct(fdt); _fdt_grab_space()
78 spaceleft = fdt_totalsize(fdt) - fdt_off_dt_struct(fdt) _fdt_grab_space()
79 - fdt_size_dt_strings(fdt); _fdt_grab_space()
84 fdt_set_size_dt_struct(fdt, offset + len); _fdt_grab_space()
85 return _fdt_offset_ptr_w(fdt, offset); _fdt_grab_space()
90 void *fdt = buf; fdt_create() local
97 fdt_set_magic(fdt, FDT_SW_MAGIC); fdt_create()
98 fdt_set_version(fdt, FDT_LAST_SUPPORTED_VERSION); fdt_create()
99 fdt_set_last_comp_version(fdt, FDT_FIRST_SUPPORTED_VERSION); fdt_create()
100 fdt_set_totalsize(fdt, bufsize); fdt_create()
102 fdt_set_off_mem_rsvmap(fdt, FDT_ALIGN(sizeof(struct fdt_header), fdt_create()
104 fdt_set_off_dt_struct(fdt, fdt_off_mem_rsvmap(fdt)); fdt_create()
105 fdt_set_off_dt_strings(fdt, bufsize); fdt_create()
110 int fdt_resize(void *fdt, void *buf, int bufsize) fdt_resize() argument
115 FDT_SW_CHECK_HEADER(fdt); fdt_resize()
117 headsize = fdt_off_dt_struct(fdt); fdt_resize()
118 tailsize = fdt_size_dt_strings(fdt); fdt_resize()
123 oldtail = (char *)fdt + fdt_totalsize(fdt) - tailsize; fdt_resize()
128 if (buf <= fdt) { fdt_resize()
129 memmove(buf, fdt, headsize); fdt_resize()
133 memmove(buf, fdt, headsize); fdt_resize()
142 int fdt_add_reservemap_entry(void *fdt, uint64_t addr, uint64_t size) fdt_add_reservemap_entry() argument
147 FDT_SW_CHECK_HEADER(fdt); fdt_add_reservemap_entry()
149 if (fdt_size_dt_struct(fdt)) fdt_add_reservemap_entry()
152 offset = fdt_off_dt_struct(fdt); fdt_add_reservemap_entry()
153 if ((offset + sizeof(*re)) > fdt_totalsize(fdt)) fdt_add_reservemap_entry()
156 re = (struct fdt_reserve_entry *)((char *)fdt + offset); fdt_add_reservemap_entry()
160 fdt_set_off_dt_struct(fdt, offset + sizeof(*re)); fdt_add_reservemap_entry()
165 int fdt_finish_reservemap(void *fdt) fdt_finish_reservemap() argument
167 return fdt_add_reservemap_entry(fdt, 0, 0); fdt_finish_reservemap()
170 int fdt_begin_node(void *fdt, const char *name) fdt_begin_node() argument
175 FDT_SW_CHECK_HEADER(fdt); fdt_begin_node()
177 nh = _fdt_grab_space(fdt, sizeof(*nh) + FDT_TAGALIGN(namelen)); fdt_begin_node()
186 int fdt_end_node(void *fdt) fdt_end_node() argument
190 FDT_SW_CHECK_HEADER(fdt); fdt_end_node()
192 en = _fdt_grab_space(fdt, FDT_TAGSIZE); fdt_end_node()
200 static int _fdt_find_add_string(void *fdt, const char *s) _fdt_find_add_string() argument
202 char *strtab = (char *)fdt + fdt_totalsize(fdt); _fdt_find_add_string()
204 int strtabsize = fdt_size_dt_strings(fdt); _fdt_find_add_string()
214 struct_top = fdt_off_dt_struct(fdt) + fdt_size_dt_struct(fdt); _fdt_find_add_string()
215 if (fdt_totalsize(fdt) + offset < struct_top) _fdt_find_add_string()
219 fdt_set_size_dt_strings(fdt, strtabsize + len); _fdt_find_add_string()
223 int fdt_property(void *fdt, const char *name, const void *val, int len) fdt_property() argument
228 FDT_SW_CHECK_HEADER(fdt); fdt_property()
230 nameoff = _fdt_find_add_string(fdt, name); fdt_property()
234 prop = _fdt_grab_space(fdt, sizeof(*prop) + FDT_TAGALIGN(len)); fdt_property()
245 int fdt_finish(void *fdt) fdt_finish() argument
247 char *p = (char *)fdt; fdt_finish()
253 FDT_SW_CHECK_HEADER(fdt); fdt_finish()
256 end = _fdt_grab_space(fdt, sizeof(*end)); fdt_finish()
262 oldstroffset = fdt_totalsize(fdt) - fdt_size_dt_strings(fdt); fdt_finish()
263 newstroffset = fdt_off_dt_struct(fdt) + fdt_size_dt_struct(fdt); fdt_finish()
264 memmove(p + newstroffset, p + oldstroffset, fdt_size_dt_strings(fdt)); fdt_finish()
265 fdt_set_off_dt_strings(fdt, newstroffset); fdt_finish()
269 while ((tag = fdt_next_tag(fdt, offset, &nextoffset)) != FDT_END) { fdt_finish()
272 _fdt_offset_ptr_w(fdt, offset); fdt_finish()
276 nameoff += fdt_size_dt_strings(fdt); fdt_finish()
285 fdt_set_totalsize(fdt, newstroffset + fdt_size_dt_strings(fdt)); fdt_finish()
286 fdt_set_magic(fdt, FDT_MAGIC); fdt_finish()
H A Dfdt_rw.c53 #include <fdt.h>
58 static int _fdt_blocks_misordered(const void *fdt, _fdt_blocks_misordered() argument
61 return (fdt_off_mem_rsvmap(fdt) < FDT_ALIGN(sizeof(struct fdt_header), 8)) _fdt_blocks_misordered()
62 || (fdt_off_dt_struct(fdt) < _fdt_blocks_misordered()
63 (fdt_off_mem_rsvmap(fdt) + mem_rsv_size)) _fdt_blocks_misordered()
64 || (fdt_off_dt_strings(fdt) < _fdt_blocks_misordered()
65 (fdt_off_dt_struct(fdt) + struct_size)) _fdt_blocks_misordered()
66 || (fdt_totalsize(fdt) < _fdt_blocks_misordered()
67 (fdt_off_dt_strings(fdt) + fdt_size_dt_strings(fdt))); _fdt_blocks_misordered()
70 static int _fdt_rw_check_header(void *fdt) _fdt_rw_check_header() argument
72 FDT_CHECK_HEADER(fdt); _fdt_rw_check_header()
74 if (fdt_version(fdt) < 17) _fdt_rw_check_header()
76 if (_fdt_blocks_misordered(fdt, sizeof(struct fdt_reserve_entry), _fdt_rw_check_header()
77 fdt_size_dt_struct(fdt))) _fdt_rw_check_header()
79 if (fdt_version(fdt) > 17) _fdt_rw_check_header()
80 fdt_set_version(fdt, 17); _fdt_rw_check_header()
85 #define FDT_RW_CHECK_HEADER(fdt) \
88 if ((__err = _fdt_rw_check_header(fdt)) != 0) \
92 static inline int _fdt_data_size(void *fdt) _fdt_data_size() argument
94 return fdt_off_dt_strings(fdt) + fdt_size_dt_strings(fdt); _fdt_data_size()
97 static int _fdt_splice(void *fdt, void *splicepoint, int oldlen, int newlen) _fdt_splice() argument
100 char *end = (char *)fdt + _fdt_data_size(fdt); _fdt_splice()
104 if ((end - oldlen + newlen) > ((char *)fdt + fdt_totalsize(fdt))) _fdt_splice()
110 static int _fdt_splice_mem_rsv(void *fdt, struct fdt_reserve_entry *p, _fdt_splice_mem_rsv() argument
115 err = _fdt_splice(fdt, p, oldn * sizeof(*p), newn * sizeof(*p)); _fdt_splice_mem_rsv()
118 fdt_set_off_dt_struct(fdt, fdt_off_dt_struct(fdt) + delta); _fdt_splice_mem_rsv()
119 fdt_set_off_dt_strings(fdt, fdt_off_dt_strings(fdt) + delta); _fdt_splice_mem_rsv()
123 static int _fdt_splice_struct(void *fdt, void *p, _fdt_splice_struct() argument
129 if ((err = _fdt_splice(fdt, p, oldlen, newlen))) _fdt_splice_struct()
132 fdt_set_size_dt_struct(fdt, fdt_size_dt_struct(fdt) + delta); _fdt_splice_struct()
133 fdt_set_off_dt_strings(fdt, fdt_off_dt_strings(fdt) + delta); _fdt_splice_struct()
137 static int _fdt_splice_string(void *fdt, int newlen) _fdt_splice_string() argument
139 void *p = (char *)fdt _fdt_splice_string()
140 + fdt_off_dt_strings(fdt) + fdt_size_dt_strings(fdt); _fdt_splice_string()
143 if ((err = _fdt_splice(fdt, p, 0, newlen))) _fdt_splice_string()
146 fdt_set_size_dt_strings(fdt, fdt_size_dt_strings(fdt) + newlen); _fdt_splice_string()
150 static int _fdt_find_add_string(void *fdt, const char *s) _fdt_find_add_string() argument
152 char *strtab = (char *)fdt + fdt_off_dt_strings(fdt); _fdt_find_add_string()
158 p = _fdt_find_string(strtab, fdt_size_dt_strings(fdt), s); _fdt_find_add_string()
163 new = strtab + fdt_size_dt_strings(fdt); _fdt_find_add_string()
164 err = _fdt_splice_string(fdt, len); _fdt_find_add_string()
172 int fdt_add_mem_rsv(void *fdt, uint64_t address, uint64_t size) fdt_add_mem_rsv() argument
177 FDT_RW_CHECK_HEADER(fdt); fdt_add_mem_rsv()
179 re = _fdt_mem_rsv_w(fdt, fdt_num_mem_rsv(fdt)); fdt_add_mem_rsv()
180 err = _fdt_splice_mem_rsv(fdt, re, 0, 1); fdt_add_mem_rsv()
189 int fdt_del_mem_rsv(void *fdt, int n) fdt_del_mem_rsv() argument
191 struct fdt_reserve_entry *re = _fdt_mem_rsv_w(fdt, n); fdt_del_mem_rsv()
194 FDT_RW_CHECK_HEADER(fdt); fdt_del_mem_rsv()
196 if (n >= fdt_num_mem_rsv(fdt)) fdt_del_mem_rsv()
199 err = _fdt_splice_mem_rsv(fdt, re, 1, 0); fdt_del_mem_rsv()
205 static int _fdt_resize_property(void *fdt, int nodeoffset, const char *name, _fdt_resize_property() argument
211 *prop = fdt_get_property_w(fdt, nodeoffset, name, &oldlen); _fdt_resize_property()
215 if ((err = _fdt_splice_struct(fdt, (*prop)->data, FDT_TAGALIGN(oldlen), _fdt_resize_property()
223 static int _fdt_add_property(void *fdt, int nodeoffset, const char *name, _fdt_add_property() argument
231 if ((nextoffset = _fdt_check_node_offset(fdt, nodeoffset)) < 0) _fdt_add_property()
234 namestroff = _fdt_find_add_string(fdt, name); _fdt_add_property()
238 *prop = _fdt_offset_ptr_w(fdt, nextoffset); _fdt_add_property()
241 err = _fdt_splice_struct(fdt, *prop, 0, proplen); _fdt_add_property()
251 int fdt_set_name(void *fdt, int nodeoffset, const char *name) fdt_set_name() argument
257 FDT_RW_CHECK_HEADER(fdt); fdt_set_name()
259 namep = (char *)(uintptr_t)fdt_get_name(fdt, nodeoffset, &oldlen); fdt_set_name()
265 err = _fdt_splice_struct(fdt, namep, FDT_TAGALIGN(oldlen+1), fdt_set_name()
274 int fdt_setprop(void *fdt, int nodeoffset, const char *name, fdt_setprop() argument
280 FDT_RW_CHECK_HEADER(fdt); fdt_setprop()
282 err = _fdt_resize_property(fdt, nodeoffset, name, len, &prop); fdt_setprop()
284 err = _fdt_add_property(fdt, nodeoffset, name, len, &prop); fdt_setprop()
292 int fdt_appendprop(void *fdt, int nodeoffset, const char *name, fdt_appendprop() argument
298 FDT_RW_CHECK_HEADER(fdt); fdt_appendprop()
300 prop = fdt_get_property_w(fdt, nodeoffset, name, &oldlen); fdt_appendprop()
303 err = _fdt_splice_struct(fdt, prop->data, fdt_appendprop()
311 err = _fdt_add_property(fdt, nodeoffset, name, len, &prop); fdt_appendprop()
319 int fdt_delprop(void *fdt, int nodeoffset, const char *name) fdt_delprop() argument
324 FDT_RW_CHECK_HEADER(fdt); fdt_delprop()
326 prop = fdt_get_property_w(fdt, nodeoffset, name, &len); fdt_delprop()
331 return _fdt_splice_struct(fdt, prop, proplen, 0); fdt_delprop()
334 int fdt_add_subnode_namelen(void *fdt, int parentoffset, fdt_add_subnode_namelen() argument
344 FDT_RW_CHECK_HEADER(fdt); fdt_add_subnode_namelen()
346 offset = fdt_subnode_offset_namelen(fdt, parentoffset, name, namelen); fdt_add_subnode_namelen()
353 fdt_next_tag(fdt, parentoffset, &nextoffset); /* skip the BEGIN_NODE */ fdt_add_subnode_namelen()
356 tag = fdt_next_tag(fdt, offset, &nextoffset); fdt_add_subnode_namelen()
359 nh = _fdt_offset_ptr_w(fdt, offset); fdt_add_subnode_namelen()
362 err = _fdt_splice_struct(fdt, nh, 0, nodelen); fdt_add_subnode_namelen()
375 int fdt_add_subnode(void *fdt, int parentoffset, const char *name) fdt_add_subnode() argument
377 return fdt_add_subnode_namelen(fdt, parentoffset, name, strlen(name)); fdt_add_subnode()
380 int fdt_del_node(void *fdt, int nodeoffset) fdt_del_node() argument
384 FDT_RW_CHECK_HEADER(fdt); fdt_del_node()
386 endoffset = _fdt_node_end_offset(fdt, nodeoffset); fdt_del_node()
390 return _fdt_splice_struct(fdt, _fdt_offset_ptr_w(fdt, nodeoffset), fdt_del_node()
416 int fdt_open_into(const void *fdt, void *buf, int bufsize) fdt_open_into() argument
421 const char *fdtstart = fdt; fdt_open_into()
422 const char *fdtend = fdtstart + fdt_totalsize(fdt); fdt_open_into()
425 FDT_CHECK_HEADER(fdt); fdt_open_into()
427 mem_rsv_size = (fdt_num_mem_rsv(fdt)+1) fdt_open_into()
430 if (fdt_version(fdt) >= 17) { fdt_open_into()
431 struct_size = fdt_size_dt_struct(fdt); fdt_open_into()
434 while (fdt_next_tag(fdt, struct_size, &struct_size) != FDT_END) fdt_open_into()
440 if (!_fdt_blocks_misordered(fdt, mem_rsv_size, struct_size)) { fdt_open_into()
442 err = fdt_move(fdt, buf, bufsize); fdt_open_into()
453 + struct_size + fdt_size_dt_strings(fdt); fdt_open_into()
468 _fdt_packblocks(fdt, tmp, mem_rsv_size, struct_size); fdt_open_into()
475 fdt_set_boot_cpuid_phys(buf, fdt_boot_cpuid_phys(fdt)); fdt_open_into()
480 int fdt_pack(void *fdt) fdt_pack() argument
484 FDT_RW_CHECK_HEADER(fdt); fdt_pack()
486 mem_rsv_size = (fdt_num_mem_rsv(fdt)+1) fdt_pack()
488 _fdt_packblocks(fdt, fdt, mem_rsv_size, fdt_size_dt_struct(fdt)); fdt_pack()
489 fdt_set_totalsize(fdt, _fdt_data_size(fdt)); fdt_pack()
H A Dfdt_ro.c53 #include <fdt.h>
58 static int _fdt_nodename_eq(const void *fdt, int offset, _fdt_nodename_eq() argument
61 const char *p = fdt_offset_ptr(fdt, offset + FDT_TAGSIZE, len+1); _fdt_nodename_eq()
78 const char *fdt_string(const void *fdt, int stroffset) fdt_string() argument
80 return (const char *)fdt + fdt_off_dt_strings(fdt) + stroffset; fdt_string()
83 static int _fdt_string_eq(const void *fdt, int stroffset, _fdt_string_eq() argument
86 const char *p = fdt_string(fdt, stroffset); _fdt_string_eq()
91 int fdt_get_mem_rsv(const void *fdt, int n, uint64_t *address, uint64_t *size) fdt_get_mem_rsv() argument
93 FDT_CHECK_HEADER(fdt); fdt_get_mem_rsv()
94 *address = fdt64_to_cpu(_fdt_mem_rsv(fdt, n)->address); fdt_get_mem_rsv()
95 *size = fdt64_to_cpu(_fdt_mem_rsv(fdt, n)->size); fdt_get_mem_rsv()
99 int fdt_num_mem_rsv(const void *fdt) fdt_num_mem_rsv() argument
103 while (fdt64_to_cpu(_fdt_mem_rsv(fdt, i)->size) != 0) fdt_num_mem_rsv()
108 static int _nextprop(const void *fdt, int offset) _nextprop() argument
114 tag = fdt_next_tag(fdt, offset, &nextoffset); _nextprop()
132 int fdt_subnode_offset_namelen(const void *fdt, int offset, fdt_subnode_offset_namelen() argument
137 FDT_CHECK_HEADER(fdt); fdt_subnode_offset_namelen()
141 offset = fdt_next_node(fdt, offset, &depth)) fdt_subnode_offset_namelen()
143 && _fdt_nodename_eq(fdt, offset, name, namelen)) fdt_subnode_offset_namelen()
151 int fdt_subnode_offset(const void *fdt, int parentoffset, fdt_subnode_offset() argument
154 return fdt_subnode_offset_namelen(fdt, parentoffset, name, strlen(name)); fdt_subnode_offset()
157 int fdt_path_offset_namelen(const void *fdt, const char *path, int namelen) fdt_path_offset_namelen() argument
163 FDT_CHECK_HEADER(fdt); fdt_path_offset_namelen()
172 p = fdt_get_alias_namelen(fdt, p, q - p); fdt_path_offset_namelen()
175 offset = fdt_path_offset(fdt, p); fdt_path_offset_namelen()
192 offset = fdt_subnode_offset_namelen(fdt, offset, p, q-p); fdt_path_offset_namelen()
202 int fdt_path_offset(const void *fdt, const char *path) fdt_path_offset() argument
204 return fdt_path_offset_namelen(fdt, path, strlen(path)); fdt_path_offset()
207 const char *fdt_get_name(const void *fdt, int nodeoffset, int *len) fdt_get_name() argument
209 const struct fdt_node_header *nh = _fdt_offset_ptr(fdt, nodeoffset); fdt_get_name()
212 if (((err = fdt_check_header(fdt)) != 0) fdt_get_name()
213 || ((err = _fdt_check_node_offset(fdt, nodeoffset)) < 0)) fdt_get_name()
227 int fdt_first_property_offset(const void *fdt, int nodeoffset) fdt_first_property_offset() argument
231 if ((offset = _fdt_check_node_offset(fdt, nodeoffset)) < 0) fdt_first_property_offset()
234 return _nextprop(fdt, offset); fdt_first_property_offset()
237 int fdt_next_property_offset(const void *fdt, int offset) fdt_next_property_offset() argument
239 if ((offset = _fdt_check_prop_offset(fdt, offset)) < 0) fdt_next_property_offset()
242 return _nextprop(fdt, offset); fdt_next_property_offset()
245 const struct fdt_property *fdt_get_property_by_offset(const void *fdt, fdt_get_property_by_offset() argument
252 if ((err = _fdt_check_prop_offset(fdt, offset)) < 0) { fdt_get_property_by_offset()
258 prop = _fdt_offset_ptr(fdt, offset); fdt_get_property_by_offset()
266 const struct fdt_property *fdt_get_property_namelen(const void *fdt, fdt_get_property_namelen() argument
271 for (offset = fdt_first_property_offset(fdt, offset); fdt_get_property_namelen()
273 (offset = fdt_next_property_offset(fdt, offset))) { fdt_get_property_namelen()
276 if (!(prop = fdt_get_property_by_offset(fdt, offset, lenp))) { fdt_get_property_namelen()
280 if (_fdt_string_eq(fdt, fdt32_to_cpu(prop->nameoff), fdt_get_property_namelen()
290 const struct fdt_property *fdt_get_property(const void *fdt, fdt_get_property() argument
294 return fdt_get_property_namelen(fdt, nodeoffset, name, fdt_get_property()
298 const void *fdt_getprop_namelen(const void *fdt, int nodeoffset, fdt_getprop_namelen() argument
303 prop = fdt_get_property_namelen(fdt, nodeoffset, name, namelen, lenp); fdt_getprop_namelen()
310 const void *fdt_getprop_by_offset(const void *fdt, int offset, fdt_getprop_by_offset() argument
315 prop = fdt_get_property_by_offset(fdt, offset, lenp); fdt_getprop_by_offset()
319 *namep = fdt_string(fdt, fdt32_to_cpu(prop->nameoff)); fdt_getprop_by_offset()
323 const void *fdt_getprop(const void *fdt, int nodeoffset, fdt_getprop() argument
326 return fdt_getprop_namelen(fdt, nodeoffset, name, strlen(name), lenp); fdt_getprop()
329 uint32_t fdt_get_phandle(const void *fdt, int nodeoffset) fdt_get_phandle() argument
336 php = fdt_getprop(fdt, nodeoffset, "phandle", &len); fdt_get_phandle()
338 php = fdt_getprop(fdt, nodeoffset, "linux,phandle", &len); fdt_get_phandle()
346 const char *fdt_get_alias_namelen(const void *fdt, fdt_get_alias_namelen() argument
351 aliasoffset = fdt_path_offset(fdt, "/aliases"); fdt_get_alias_namelen()
355 return fdt_getprop_namelen(fdt, aliasoffset, name, namelen, NULL); fdt_get_alias_namelen()
358 const char *fdt_get_alias(const void *fdt, const char *name) fdt_get_alias() argument
360 return fdt_get_alias_namelen(fdt, name, strlen(name)); fdt_get_alias()
363 int fdt_get_path(const void *fdt, int nodeoffset, char *buf, int buflen) fdt_get_path() argument
369 FDT_CHECK_HEADER(fdt); fdt_get_path()
376 offset = fdt_next_node(fdt, offset, &depth)) { fdt_get_path()
385 name = fdt_get_name(fdt, offset, &namelen); fdt_get_path()
415 int fdt_supernode_atdepth_offset(const void *fdt, int nodeoffset, fdt_supernode_atdepth_offset() argument
421 FDT_CHECK_HEADER(fdt); fdt_supernode_atdepth_offset()
428 offset = fdt_next_node(fdt, offset, &depth)) { fdt_supernode_atdepth_offset()
451 int fdt_node_depth(const void *fdt, int nodeoffset) fdt_node_depth() argument
456 err = fdt_supernode_atdepth_offset(fdt, nodeoffset, 0, &nodedepth); fdt_node_depth()
462 int fdt_parent_offset(const void *fdt, int nodeoffset) fdt_parent_offset() argument
464 int nodedepth = fdt_node_depth(fdt, nodeoffset); fdt_parent_offset()
468 return fdt_supernode_atdepth_offset(fdt, nodeoffset, fdt_parent_offset()
472 int fdt_node_offset_by_prop_value(const void *fdt, int startoffset, fdt_node_offset_by_prop_value() argument
480 FDT_CHECK_HEADER(fdt); fdt_node_offset_by_prop_value()
487 for (offset = fdt_next_node(fdt, startoffset, NULL); fdt_node_offset_by_prop_value()
489 offset = fdt_next_node(fdt, offset, NULL)) { fdt_node_offset_by_prop_value()
490 val = fdt_getprop(fdt, offset, propname, &len); fdt_node_offset_by_prop_value()
499 int fdt_node_offset_by_phandle(const void *fdt, uint32_t phandle) fdt_node_offset_by_phandle() argument
506 FDT_CHECK_HEADER(fdt); fdt_node_offset_by_phandle()
514 for (offset = fdt_next_node(fdt, -1, NULL); fdt_node_offset_by_phandle()
516 offset = fdt_next_node(fdt, offset, NULL)) { fdt_node_offset_by_phandle()
517 if (fdt_get_phandle(fdt, offset) == phandle) fdt_node_offset_by_phandle()
541 int fdt_node_check_compatible(const void *fdt, int nodeoffset, fdt_node_check_compatible() argument
547 prop = fdt_getprop(fdt, nodeoffset, "compatible", &len); fdt_node_check_compatible()
556 int fdt_node_offset_by_compatible(const void *fdt, int startoffset, fdt_node_offset_by_compatible() argument
561 FDT_CHECK_HEADER(fdt); fdt_node_offset_by_compatible()
568 for (offset = fdt_next_node(fdt, startoffset, NULL); fdt_node_offset_by_compatible()
570 offset = fdt_next_node(fdt, offset, NULL)) { fdt_node_offset_by_compatible()
571 err = fdt_node_check_compatible(fdt, offset, compatible); fdt_node_offset_by_compatible()
H A Dlibfdt_internal.h53 #include <fdt.h>
58 #define FDT_CHECK_HEADER(fdt) \
61 if ((__err = fdt_check_header(fdt)) != 0) \
65 int _fdt_check_node_offset(const void *fdt, int offset);
66 int _fdt_check_prop_offset(const void *fdt, int offset);
68 int _fdt_node_end_offset(void *fdt, int nodeoffset);
70 static inline const void *_fdt_offset_ptr(const void *fdt, int offset) _fdt_offset_ptr() argument
72 return (const char *)fdt + fdt_off_dt_struct(fdt) + offset; _fdt_offset_ptr()
75 static inline void *_fdt_offset_ptr_w(void *fdt, int offset) _fdt_offset_ptr_w() argument
77 return (void *)(uintptr_t)_fdt_offset_ptr(fdt, offset); _fdt_offset_ptr_w()
80 static inline const struct fdt_reserve_entry *_fdt_mem_rsv(const void *fdt, int n) _fdt_mem_rsv() argument
84 ((const char *)fdt + fdt_off_mem_rsvmap(fdt)); _fdt_mem_rsv()
88 static inline struct fdt_reserve_entry *_fdt_mem_rsv_w(void *fdt, int n) _fdt_mem_rsv_w() argument
90 return (void *)(uintptr_t)_fdt_mem_rsv(fdt, n); _fdt_mem_rsv_w()
H A Dfdt.c53 #include <fdt.h>
58 int fdt_check_header(const void *fdt) fdt_check_header() argument
60 if (fdt_magic(fdt) == FDT_MAGIC) { fdt_check_header()
62 if (fdt_version(fdt) < FDT_FIRST_SUPPORTED_VERSION) fdt_check_header()
64 if (fdt_last_comp_version(fdt) > FDT_LAST_SUPPORTED_VERSION) fdt_check_header()
66 } else if (fdt_magic(fdt) == FDT_SW_MAGIC) { fdt_check_header()
68 if (fdt_size_dt_struct(fdt) == 0) fdt_check_header()
77 const void *fdt_offset_ptr(const void *fdt, int offset, unsigned int len) fdt_offset_ptr() argument
81 if (fdt_version(fdt) >= 0x11) fdt_offset_ptr()
83 || ((offset + len) > fdt_size_dt_struct(fdt))) fdt_offset_ptr()
86 p = _fdt_offset_ptr(fdt, offset); fdt_offset_ptr()
93 uint32_t fdt_next_tag(const void *fdt, int startoffset, int *nextoffset) fdt_next_tag() argument
101 tagp = fdt_offset_ptr(fdt, offset, FDT_TAGSIZE); fdt_next_tag()
112 p = fdt_offset_ptr(fdt, offset++, 1); fdt_next_tag()
119 lenp = fdt_offset_ptr(fdt, offset, sizeof(*lenp)); fdt_next_tag()
136 if (!fdt_offset_ptr(fdt, startoffset, offset - startoffset)) fdt_next_tag()
143 int _fdt_check_node_offset(const void *fdt, int offset) _fdt_check_node_offset() argument
146 || (fdt_next_tag(fdt, offset, &offset) != FDT_BEGIN_NODE)) _fdt_check_node_offset()
152 int _fdt_check_prop_offset(const void *fdt, int offset) _fdt_check_prop_offset() argument
155 || (fdt_next_tag(fdt, offset, &offset) != FDT_PROP)) _fdt_check_prop_offset()
161 int fdt_next_node(const void *fdt, int offset, int *depth) fdt_next_node() argument
167 if ((nextoffset = _fdt_check_node_offset(fdt, offset)) < 0) fdt_next_node()
172 tag = fdt_next_tag(fdt, offset, &nextoffset); fdt_next_node()
201 int fdt_first_subnode(const void *fdt, int offset) fdt_first_subnode() argument
205 offset = fdt_next_node(fdt, offset, &depth); fdt_first_subnode()
212 int fdt_next_subnode(const void *fdt, int offset) fdt_next_subnode() argument
221 offset = fdt_next_node(fdt, offset, &depth); fdt_next_subnode()
241 int fdt_move(const void *fdt, void *buf, int bufsize) fdt_move() argument
243 FDT_CHECK_HEADER(fdt); fdt_move()
245 if (fdt_totalsize(fdt) > bufsize) fdt_move()
248 memmove(buf, fdt, fdt_totalsize(fdt)); fdt_move()
H A Dlibfdt.h55 #include "fdt.h"
130 const void *fdt_offset_ptr(const void *fdt, int offset, unsigned int checklen); fdt_offset_ptr_w()
131 static inline void *fdt_offset_ptr_w(void *fdt, int offset, int checklen) fdt_offset_ptr_w() argument
133 return (void *)(uintptr_t)fdt_offset_ptr(fdt, offset, checklen); fdt_offset_ptr_w()
136 uint32_t fdt_next_tag(const void *fdt, int offset, int *nextoffset);
142 int fdt_next_node(const void *fdt, int offset, int *depth);
147 * @fdt: FDT blob
151 int fdt_first_subnode(const void *fdt, int offset);
159 * @fdt: FDT blob
164 int fdt_next_subnode(const void *fdt, int offset);
170 #define fdt_get_header(fdt, field) \
171 (fdt32_to_cpu(((const struct fdt_header *)(fdt))->field))
172 #define fdt_magic(fdt) (fdt_get_header(fdt, magic))
173 #define fdt_totalsize(fdt) (fdt_get_header(fdt, totalsize))
174 #define fdt_off_dt_struct(fdt) (fdt_get_header(fdt, off_dt_struct))
175 #define fdt_off_dt_strings(fdt) (fdt_get_header(fdt, off_dt_strings))
176 #define fdt_off_mem_rsvmap(fdt) (fdt_get_header(fdt, off_mem_rsvmap))
177 #define fdt_version(fdt) (fdt_get_header(fdt, version))
178 #define fdt_last_comp_version(fdt) (fdt_get_header(fdt, last_comp_version))
179 #define fdt_boot_cpuid_phys(fdt) (fdt_get_header(fdt, boot_cpuid_phys))
180 #define fdt_size_dt_strings(fdt) (fdt_get_header(fdt, size_dt_strings))
181 #define fdt_size_dt_struct(fdt) (fdt_get_header(fdt, size_dt_struct))
184 static inline void fdt_set_##name(void *fdt, uint32_t val) \
186 struct fdt_header *fdth = (struct fdt_header*)fdt; \
203 * @fdt: pointer to data which might be a flattened device tree
215 int fdt_check_header(const void *fdt);
219 * @fdt: pointer to the device tree to move
224 * fdt to the buffer at buf of size bufsize. The buffer may overlap
225 * with the existing device tree blob at fdt. Therefore,
226 * fdt_move(fdt, fdt, fdt_totalsize(fdt))
236 int fdt_move(const void *fdt, void *buf, int bufsize);
244 * @fdt: pointer to the device tree blob
248 * strings block of the device tree blob at fdt.
254 const char *fdt_string(const void *fdt, int stroffset);
258 * @fdt: pointer to the device tree blob
267 int fdt_num_mem_rsv(const void *fdt);
271 * @fdt: pointer to the device tree blob
284 int fdt_get_mem_rsv(const void *fdt, int n, uint64_t *address, uint64_t *size);
288 * @fdt: pointer to the device tree blob
298 int fdt_subnode_offset_namelen(const void *fdt, int parentoffset,
302 * @fdt: pointer to the device tree blob
323 int fdt_subnode_offset(const void *fdt, int parentoffset, const char *name);
327 * @fdt: pointer to the device tree blob
334 int fdt_path_offset_namelen(const void *fdt, const char *path, int namelen);
338 * @fdt: pointer to the device tree blob
358 int fdt_path_offset(const void *fdt, const char *path);
362 * @fdt: pointer to the device tree blob
381 const char *fdt_get_name(const void *fdt, int nodeoffset, int *lenp);
385 * @fdt: pointer to the device tree blob
401 int fdt_first_property_offset(const void *fdt, int nodeoffset);
405 * @fdt: pointer to the device tree blob
422 int fdt_next_property_offset(const void *fdt, int offset);
426 * @fdt: pointer to the device tree blob
448 const struct fdt_property *fdt_get_property_by_offset(const void *fdt,
454 * @fdt: pointer to the device tree blob
463 const struct fdt_property *fdt_get_property_namelen(const void *fdt,
470 * @fdt: pointer to the device tree blob
495 const struct fdt_property *fdt_get_property(const void *fdt, int nodeoffset,
497 static inline struct fdt_property *fdt_get_property_w(void *fdt, int nodeoffset, fdt_get_property_w() argument
502 fdt_get_property(fdt, nodeoffset, name, lenp); fdt_get_property_w()
507 * @fdt: pointer to the device tree blob
536 const void *fdt_getprop_by_offset(const void *fdt, int offset,
541 * @fdt: pointer to the device tree blob
550 const void *fdt_getprop_namelen(const void *fdt, int nodeoffset,
555 * @fdt: pointer to the device tree blob
580 const void *fdt_getprop(const void *fdt, int nodeoffset,
582 static inline void *fdt_getprop_w(void *fdt, int nodeoffset, fdt_getprop_w() argument
585 return (void *)(uintptr_t)fdt_getprop(fdt, nodeoffset, name, lenp); fdt_getprop_w()
590 * @fdt: pointer to the device tree blob
600 uint32_t fdt_get_phandle(const void *fdt, int nodeoffset);
604 * @fdt: pointer to the device tree blob
611 const char *fdt_get_alias_namelen(const void *fdt,
616 * @fdt: pointer to the device tree blob
626 const char *fdt_get_alias(const void *fdt, const char *name);
630 * @fdt: pointer to the device tree blob
653 int fdt_get_path(const void *fdt, int nodeoffset, char *buf, int buflen);
657 * @fdt: pointer to the device tree blob
665 * fdt_supernode_atdepth_offset(fdt, nodeoffset, 0, NULL);
668 * fdt_supernode_atdepth_offset(fdt, nodeoffset, D, NULL);
685 int fdt_supernode_atdepth_offset(const void *fdt, int nodeoffset,
690 * @fdt: pointer to the device tree blob
707 int fdt_node_depth(const void *fdt, int nodeoffset);
711 * @fdt: pointer to the device tree blob
730 int fdt_parent_offset(const void *fdt, int nodeoffset);
734 * @fdt: pointer to the device tree blob
747 * offset = fdt_node_offset_by_prop_value(fdt, -1, propname,
751 * offset = fdt_node_offset_by_prop_value(fdt, offset, propname,
770 int fdt_node_offset_by_prop_value(const void *fdt, int startoffset,
776 * @fdt: pointer to the device tree blob
793 int fdt_node_offset_by_phandle(const void *fdt, uint32_t phandle);
797 * @fdt: pointer to the device tree blob
817 int fdt_node_check_compatible(const void *fdt, int nodeoffset,
822 * @fdt: pointer to the device tree blob
833 * offset = fdt_node_offset_by_compatible(fdt, -1, compatible);
836 * offset = fdt_node_offset_by_compatible(fdt, offset, compatible);
854 int fdt_node_offset_by_compatible(const void *fdt, int startoffset,
888 * @fdt: pointer to the device tree blob
903 int fdt_address_cells(const void *fdt, int nodeoffset);
908 * @fdt: pointer to the device tree blob
923 int fdt_size_cells(const void *fdt, int nodeoffset);
932 * @fdt: pointer to the device tree blob
958 int fdt_setprop_inplace(void *fdt, int nodeoffset, const char *name,
963 * @fdt: pointer to the device tree blob
989 static inline int fdt_setprop_inplace_u32(void *fdt, int nodeoffset, fdt_setprop_inplace_u32() argument
993 return fdt_setprop_inplace(fdt, nodeoffset, name, &tmp, sizeof(tmp)); fdt_setprop_inplace_u32()
998 * @fdt: pointer to the device tree blob
1024 static inline int fdt_setprop_inplace_u64(void *fdt, int nodeoffset, fdt_setprop_inplace_u64() argument
1028 return fdt_setprop_inplace(fdt, nodeoffset, name, &tmp, sizeof(tmp)); fdt_setprop_inplace_u64()
1036 static inline int fdt_setprop_inplace_cell(void *fdt, int nodeoffset, fdt_setprop_inplace_cell() argument
1039 return fdt_setprop_inplace_u32(fdt, nodeoffset, name, val); fdt_setprop_inplace_cell()
1044 * @fdt: pointer to the device tree blob
1066 int fdt_nop_property(void *fdt, int nodeoffset, const char *name);
1070 * @fdt: pointer to the device tree blob
1090 int fdt_nop_node(void *fdt, int nodeoffset);
1097 int fdt_resize(void *fdt, void *buf, int bufsize);
1098 int fdt_add_reservemap_entry(void *fdt, uint64_t addr, uint64_t size);
1099 int fdt_finish_reservemap(void *fdt);
1100 int fdt_begin_node(void *fdt, const char *name);
1101 int fdt_property(void *fdt, const char *name, const void *val, int len); fdt_property_u32()
1102 static inline int fdt_property_u32(void *fdt, const char *name, uint32_t val) fdt_property_u32() argument
1105 return fdt_property(fdt, name, &tmp, sizeof(tmp)); fdt_property_u32()
1107 static inline int fdt_property_u64(void *fdt, const char *name, uint64_t val) fdt_property_u64() argument
1110 return fdt_property(fdt, name, &tmp, sizeof(tmp)); fdt_property_u64()
1112 static inline int fdt_property_cell(void *fdt, const char *name, uint32_t val) fdt_property_cell() argument
1114 return fdt_property_u32(fdt, name, val); fdt_property_cell()
1116 #define fdt_property_string(fdt, name, str) \
1117 fdt_property(fdt, name, str, strlen(str)+1)
1118 int fdt_end_node(void *fdt);
1119 int fdt_finish(void *fdt);
1126 int fdt_open_into(const void *fdt, void *buf, int bufsize);
1127 int fdt_pack(void *fdt);
1131 * @fdt: pointer to the device tree blob
1151 int fdt_add_mem_rsv(void *fdt, uint64_t address, uint64_t size);
1155 * @fdt: pointer to the device tree blob
1175 int fdt_del_mem_rsv(void *fdt, int n);
1179 * @fdt: pointer to the device tree blob
1201 int fdt_set_name(void *fdt, int nodeoffset, const char *name);
1205 * @fdt: pointer to the device tree blob
1231 int fdt_setprop(void *fdt, int nodeoffset, const char *name,
1236 * @fdt: pointer to the device tree blob
1262 static inline int fdt_setprop_u32(void *fdt, int nodeoffset, const char *name, fdt_setprop_u32() argument
1266 return fdt_setprop(fdt, nodeoffset, name, &tmp, sizeof(tmp)); fdt_setprop_u32()
1271 * @fdt: pointer to the device tree blob
1297 static inline int fdt_setprop_u64(void *fdt, int nodeoffset, const char *name, fdt_setprop_u64() argument
1301 return fdt_setprop(fdt, nodeoffset, name, &tmp, sizeof(tmp)); fdt_setprop_u64()
1309 static inline int fdt_setprop_cell(void *fdt, int nodeoffset, const char *name, fdt_setprop_cell() argument
1312 return fdt_setprop_u32(fdt, nodeoffset, name, val); fdt_setprop_cell()
1317 * @fdt: pointer to the device tree blob
1343 #define fdt_setprop_string(fdt, nodeoffset, name, str) \
1344 fdt_setprop((fdt), (nodeoffset), (name), (str), strlen(str)+1)
1348 * @fdt: pointer to the device tree blob
1373 int fdt_appendprop(void *fdt, int nodeoffset, const char *name,
1378 * @fdt: pointer to the device tree blob
1404 static inline int fdt_appendprop_u32(void *fdt, int nodeoffset, fdt_appendprop_u32() argument
1408 return fdt_appendprop(fdt, nodeoffset, name, &tmp, sizeof(tmp)); fdt_appendprop_u32()
1413 * @fdt: pointer to the device tree blob
1439 static inline int fdt_appendprop_u64(void *fdt, int nodeoffset, fdt_appendprop_u64() argument
1443 return fdt_appendprop(fdt, nodeoffset, name, &tmp, sizeof(tmp)); fdt_appendprop_u64()
1451 static inline int fdt_appendprop_cell(void *fdt, int nodeoffset, fdt_appendprop_cell() argument
1454 return fdt_appendprop_u32(fdt, nodeoffset, name, val); fdt_appendprop_cell()
1459 * @fdt: pointer to the device tree blob
1484 #define fdt_appendprop_string(fdt, nodeoffset, name, str) \
1485 fdt_appendprop((fdt), (nodeoffset), (name), (str), strlen(str)+1)
1489 * @fdt: pointer to the device tree blob
1509 int fdt_delprop(void *fdt, int nodeoffset, const char *name);
1513 * @fdt: pointer to the device tree blob
1523 int fdt_add_subnode_namelen(void *fdt, int parentoffset,
1528 * @fdt: pointer to the device tree blob
1555 int fdt_add_subnode(void *fdt, int parentoffset, const char *name);
1559 * @fdt: pointer to the device tree blob
1578 int fdt_del_node(void *fdt, int nodeoffset);
H A Dfdt_wip.c53 #include <fdt.h>
58 int fdt_setprop_inplace(void *fdt, int nodeoffset, const char *name, fdt_setprop_inplace() argument
64 propval = fdt_getprop_w(fdt, nodeoffset, name, &proplen); fdt_setprop_inplace()
83 int fdt_nop_property(void *fdt, int nodeoffset, const char *name) fdt_nop_property() argument
88 prop = fdt_get_property_w(fdt, nodeoffset, name, &len); fdt_nop_property()
97 int _fdt_node_end_offset(void *fdt, int offset) _fdt_node_end_offset() argument
102 offset = fdt_next_node(fdt, offset, &depth); _fdt_node_end_offset()
107 int fdt_nop_node(void *fdt, int nodeoffset) fdt_nop_node() argument
111 endoffset = _fdt_node_end_offset(fdt, nodeoffset); fdt_nop_node()
115 _fdt_nop_region(fdt_offset_ptr_w(fdt, nodeoffset, 0), fdt_nop_node()
H A Dfdt_empty_tree.c53 #include <fdt.h>
H A Dfdt_strerror.c53 #include <fdt.h>
/linux-4.4.14/include/linux/
H A Dlibfdt.h5 #include "../../scripts/dtc/libfdt/fdt.h"
H A Dfdtable.h33 static inline bool close_on_exec(int fd, const struct fdtable *fdt) close_on_exec() argument
35 return test_bit(fd, fdt->close_on_exec); close_on_exec()
38 static inline bool fd_is_open(int fd, const struct fdtable *fdt) fd_is_open() argument
40 return test_bit(fd, fdt->open_fds); fd_is_open()
54 struct fdtable __rcu *fdt; member in struct:files_struct
75 rcu_dereference_check_fdtable((files), (files)->fdt)
82 struct fdtable *fdt = rcu_dereference_raw(files->fdt); __fcheck_files() local
84 if (fd < fdt->max_fds) __fcheck_files()
85 return rcu_dereference_raw(fdt->fd[fd]); __fcheck_files()
H A Dof_fdt.h43 /* TBD: Temporary export of fdt globals - remove when code fully merged */
/linux-4.4.14/arch/arm/boot/compressed/
H A Datags_to_fdt.c12 static int node_offset(void *fdt, const char *node_path) node_offset() argument
14 int offset = fdt_path_offset(fdt, node_path); node_offset()
16 offset = fdt_add_subnode(fdt, 0, node_path); node_offset()
20 static int setprop(void *fdt, const char *node_path, const char *property, setprop() argument
23 int offset = node_offset(fdt, node_path); setprop()
26 return fdt_setprop(fdt, offset, property, val_array, size); setprop()
29 static int setprop_string(void *fdt, const char *node_path, setprop_string() argument
32 int offset = node_offset(fdt, node_path); setprop_string()
35 return fdt_setprop_string(fdt, offset, property, string); setprop_string()
38 static int setprop_cell(void *fdt, const char *node_path, setprop_cell() argument
41 int offset = node_offset(fdt, node_path); setprop_cell()
44 return fdt_setprop_cell(fdt, offset, property, val); setprop_cell()
47 static const void *getprop(const void *fdt, const char *node_path, getprop() argument
50 int offset = fdt_path_offset(fdt, node_path); getprop()
55 return fdt_getprop(fdt, offset, property, len); getprop()
58 static uint32_t get_cell_size(const void *fdt) get_cell_size() argument
62 const uint32_t *size_len = getprop(fdt, "/", "#size-cells", &len); get_cell_size()
69 static void merge_fdt_bootargs(void *fdt, const char *fdt_cmdline) merge_fdt_bootargs() argument
76 /* copy the fdt command line into the buffer */ merge_fdt_bootargs()
77 fdt_bootargs = getprop(fdt, "/chosen", "bootargs", &len); merge_fdt_bootargs()
97 setprop_string(fdt, "/chosen", "bootargs", cmdline); merge_fdt_bootargs()
108 int atags_to_fdt(void *atag_list, void *fdt, int total_space) atags_to_fdt() argument
132 ret = fdt_open_into(fdt, fdt, total_space); atags_to_fdt()
145 merge_fdt_bootargs(fdt, for_each_tag()
148 setprop_string(fdt, "/chosen", "bootargs", for_each_tag()
155 memsize = get_cell_size(fdt); for_each_tag()
178 setprop_cell(fdt, "/chosen", "linux,initrd-start", for_each_tag()
180 setprop_cell(fdt, "/chosen", "linux,initrd-end", for_each_tag()
186 setprop(fdt, "/memory", "reg", mem_reg_property,
190 return fdt_pack(fdt);
H A DMakefile77 libfdt := fdt_rw.c fdt_ro.c fdt_wip.c fdt.c
78 libfdt_hdrs := fdt.h libfdt.h libfdt_internal.h
/linux-4.4.14/arch/mips/include/asm/mach-malta/
H A Dmalta-dtshim.h18 extern void __init *malta_dt_shim(void *fdt);
22 static inline void *malta_dt_shim(void *fdt) malta_dt_shim() argument
24 return fdt; malta_dt_shim()
/linux-4.4.14/arch/powerpc/boot/
H A Dlibfdt-wrapper.c54 static void *fdt; variable
61 int size = fdt_totalsize(fdt); expand_buf()
68 rc = fdt_open_into(fdt, buf, size); expand_buf()
70 fatal("Couldn't expand fdt into new buffer: %s\n\r", expand_buf()
73 fdt = buf; expand_buf()
78 return offset_devp(fdt_path_offset(fdt, path)); fdt_wrapper_finddevice()
87 p = fdt_getprop(fdt, devp_offset(devp), name, &len); fdt_wrapper_getprop()
99 rc = fdt_setprop(fdt, devp_offset(devp), name, buf, len); fdt_wrapper_setprop()
102 rc = fdt_setprop(fdt, devp_offset(devp), name, buf, len); fdt_wrapper_setprop()
110 return fdt_del_node(fdt, devp_offset(devp)); fdt_wrapper_del_node()
115 return offset_devp(fdt_parent_offset(fdt, devp_offset(devp))); fdt_wrapper_get_parent()
122 offset = fdt_add_subnode(fdt, devp_offset(devp), name); fdt_wrapper_create_node()
125 offset = fdt_add_subnode(fdt, devp_offset(devp), name); fdt_wrapper_create_node()
136 int offset = fdt_node_offset_by_prop_value(fdt, devp_offset_find(prev), fdt_wrapper_find_node_by_prop_value()
144 int offset = fdt_node_offset_by_compatible(fdt, devp_offset_find(prev), fdt_wrapper_find_node_by_compatible()
153 rc = fdt_get_path(fdt, devp_offset(devp), buf, len); fdt_wrapper_get_path()
163 rc = fdt_pack(fdt); fdt_wrapper_finalize()
167 return (unsigned long)fdt; fdt_wrapper_finalize()
187 fdt = blob; fdt_init()
188 bufsize = fdt_totalsize(fdt) + EXPAND_GRANULARITY; fdt_init()
193 err = fdt_open_into(fdt, buf, bufsize); fdt_init()
198 fdt = buf; fdt_init()
H A Dcuboot-hotfoot.c67 /* Fix up flash size in fdt for 4M boards. */ hotfoot_fixups()
H A DMakefile70 libfdt := fdt.c fdt_ro.c fdt_wip.c fdt_sw.c fdt_rw.c fdt_strerror.c
71 libfdtheader := fdt.h libfdt.h libfdt_internal.h
/linux-4.4.14/fs/
H A Dfile.c47 static void __free_fdtable(struct fdtable *fdt) __free_fdtable() argument
49 kvfree(fdt->fd); __free_fdtable()
50 kvfree(fdt->open_fds); __free_fdtable()
51 kfree(fdt); __free_fdtable()
105 struct fdtable *fdt; alloc_fdtable() local
129 fdt = kmalloc(sizeof(struct fdtable), GFP_KERNEL); alloc_fdtable()
130 if (!fdt) alloc_fdtable()
132 fdt->max_fds = nr; alloc_fdtable()
136 fdt->fd = data; alloc_fdtable()
142 fdt->open_fds = data; alloc_fdtable()
144 fdt->close_on_exec = data; alloc_fdtable()
146 fdt->full_fds_bits = data; alloc_fdtable()
148 return fdt; alloc_fdtable()
151 kvfree(fdt->fd); alloc_fdtable()
153 kfree(fdt); alloc_fdtable()
194 rcu_assign_pointer(files->fdt, new_fdt);
214 struct fdtable *fdt; variable in typeref:struct:fdtable
218 fdt = files_fdtable(files);
221 if (nr < fdt->max_fds)
245 static inline void __set_close_on_exec(int fd, struct fdtable *fdt) __set_close_on_exec() argument
247 __set_bit(fd, fdt->close_on_exec); __set_close_on_exec()
250 static inline void __clear_close_on_exec(int fd, struct fdtable *fdt) __clear_close_on_exec() argument
252 if (test_bit(fd, fdt->close_on_exec)) __clear_close_on_exec()
253 __clear_bit(fd, fdt->close_on_exec); __clear_close_on_exec()
256 static inline void __set_open_fd(unsigned int fd, struct fdtable *fdt) __set_open_fd() argument
258 __set_bit(fd, fdt->open_fds); __set_open_fd()
260 if (!~fdt->open_fds[fd]) __set_open_fd()
261 __set_bit(fd, fdt->full_fds_bits); __set_open_fd()
264 static inline void __clear_open_fd(unsigned int fd, struct fdtable *fdt) __clear_open_fd() argument
266 __clear_bit(fd, fdt->open_fds); __clear_open_fd()
267 __clear_bit(fd / BITS_PER_LONG, fdt->full_fds_bits); __clear_open_fd()
270 static int count_open_files(struct fdtable *fdt) count_open_files() argument
272 int size = fdt->max_fds; count_open_files()
277 if (fdt->open_fds[--i]) count_open_files()
375 rcu_assign_pointer(newf->fdt, new_fdt); dup_fd()
392 struct fdtable *fdt = rcu_dereference_raw(files->fdt); close_files() local
398 if (i >= fdt->max_fds) close_files()
400 set = fdt->open_fds[j++]; close_files()
403 struct file * file = xchg(&fdt->fd[i], NULL); close_files()
414 return fdt; close_files()
433 struct fdtable *fdt = close_files(files); put_files_struct() local
436 if (fdt != &files->fdtab) put_files_struct()
437 __free_fdtable(fdt); put_files_struct()
468 .fdt = &init_files.fdtab,
479 static unsigned long find_next_fd(struct fdtable *fdt, unsigned long start) find_next_fd() argument
481 unsigned long maxfd = fdt->max_fds; find_next_fd()
485 bitbit = find_next_zero_bit(fdt->full_fds_bits, maxbit, bitbit) * BITS_PER_LONG; find_next_fd()
490 return find_next_zero_bit(fdt->open_fds, maxfd, start); find_next_fd()
501 struct fdtable *fdt; __alloc_fd() local
505 fdt = files_fdtable(files); __alloc_fd()
510 if (fd < fdt->max_fds) __alloc_fd()
511 fd = find_next_fd(fdt, fd); __alloc_fd()
535 __set_open_fd(fd, fdt); __alloc_fd()
537 __set_close_on_exec(fd, fdt); __alloc_fd()
539 __clear_close_on_exec(fd, fdt); __alloc_fd()
543 if (rcu_access_pointer(fdt->fd[fd]) != NULL) { __alloc_fd()
545 rcu_assign_pointer(fdt->fd[fd], NULL); __alloc_fd()
567 struct fdtable *fdt = files_fdtable(files); __put_unused_fd() local
568 __clear_open_fd(fd, fdt); __put_unused_fd()
606 struct fdtable *fdt; __fd_install() local
618 fdt = rcu_dereference_sched(files->fdt); __fd_install()
619 BUG_ON(fdt->fd[fd] != NULL); __fd_install()
620 rcu_assign_pointer(fdt->fd[fd], file); __fd_install()
637 struct fdtable *fdt; __close_fd() local
640 fdt = files_fdtable(files); __close_fd()
641 if (fd >= fdt->max_fds) __close_fd()
643 file = fdt->fd[fd]; __close_fd()
646 rcu_assign_pointer(fdt->fd[fd], NULL); __close_fd()
647 __clear_close_on_exec(fd, fdt); __close_fd()
660 struct fdtable *fdt; do_close_on_exec() local
667 fdt = files_fdtable(files); do_close_on_exec()
668 if (fd >= fdt->max_fds) do_close_on_exec()
670 set = fdt->close_on_exec[i]; do_close_on_exec()
673 fdt->close_on_exec[i] = 0; do_close_on_exec()
678 file = fdt->fd[fd]; do_close_on_exec()
681 rcu_assign_pointer(fdt->fd[fd], NULL); do_close_on_exec()
795 struct fdtable *fdt; set_close_on_exec() local
797 fdt = files_fdtable(files); set_close_on_exec()
799 __set_close_on_exec(fd, fdt); set_close_on_exec()
801 __clear_close_on_exec(fd, fdt); set_close_on_exec()
808 struct fdtable *fdt; get_close_on_exec() local
811 fdt = files_fdtable(files); get_close_on_exec()
812 res = close_on_exec(fd, fdt); get_close_on_exec()
822 struct fdtable *fdt; variable in typeref:struct:fdtable
838 fdt = files_fdtable(files);
839 tofree = fdt->fd[fd];
840 if (!tofree && fd_is_open(fd, fdt))
843 rcu_assign_pointer(fdt->fd[fd], file);
844 __set_open_fd(fd, fdt);
846 __set_close_on_exec(fd, fdt);
848 __clear_close_on_exec(fd, fdt);
964 struct fdtable *fdt; iterate_fd() local
969 for (fdt = files_fdtable(files); n < fdt->max_fds; n++) { iterate_fd()
971 file = rcu_dereference_check_fdtable(files, fdt->fd[n]); iterate_fd()
H A Dselect.c347 struct fdtable *fdt; max_select_fd() local
352 fdt = files_fdtable(current->files); max_select_fd()
353 open_fds = fdt->open_fds + n; max_select_fd()
554 struct fdtable *fdt; core_sys_select() local
564 fdt = files_fdtable(current->files); core_sys_select()
565 max_fds = fdt->max_fds; core_sys_select()
H A Dcompat.c1241 struct fdtable *fdt; compat_core_sys_select() local
1249 fdt = files_fdtable(current->files); compat_core_sys_select()
1250 max_fds = fdt->max_fds; compat_core_sys_select()
H A Dexec.c1555 if (close_on_exec(fd, rcu_dereference_raw(current->files->fdt))) do_execveat_common()
/linux-4.4.14/drivers/firmware/efi/libstub/
H A Dfdt.c21 void *fdt, int new_fdt_size, char *cmdline_ptr, update_fdt()
49 status = fdt_open_into(orig_fdt, fdt, new_fdt_size); update_fdt()
51 status = fdt_create_empty_tree(fdt, new_fdt_size); update_fdt()
65 node = fdt_next_node(fdt, prev, NULL); update_fdt()
69 type = fdt_getprop(fdt, node, "device_type", &len); update_fdt()
71 fdt_del_node(fdt, node); update_fdt()
82 num_rsv = fdt_num_mem_rsv(fdt); update_fdt()
84 fdt_del_mem_rsv(fdt, num_rsv); update_fdt()
86 node = fdt_subnode_offset(fdt, 0, "chosen"); update_fdt()
88 node = fdt_add_subnode(fdt, 0, "chosen"); update_fdt()
96 status = fdt_setprop(fdt, node, "bootargs", cmdline_ptr, update_fdt()
107 status = fdt_setprop(fdt, node, "linux,initrd-start", update_fdt()
112 status = fdt_setprop(fdt, node, "linux,initrd-end", update_fdt()
119 node = fdt_subnode_offset(fdt, 0, "chosen"); update_fdt()
121 status = fdt_setprop(fdt, node, "linux,uefi-system-table", update_fdt()
127 status = fdt_setprop(fdt, node, "linux,uefi-mmap-start", update_fdt()
133 status = fdt_setprop(fdt, node, "linux,uefi-mmap-size", update_fdt()
139 status = fdt_setprop(fdt, node, "linux,uefi-mmap-desc-size", update_fdt()
145 status = fdt_setprop(fdt, node, "linux,uefi-mmap-desc-ver", update_fdt()
321 void *fdt; get_fdt() local
325 fdt = NULL; get_fdt()
329 fdt = (void *) tables[i].table; get_fdt()
330 if (fdt_check_header(fdt) != 0) { get_fdt()
334 *fdt_size = fdt_totalsize(fdt); get_fdt()
338 return fdt; get_fdt()
19 update_fdt(efi_system_table_t *sys_table, void *orig_fdt, unsigned long orig_fdt_size, void *fdt, int new_fdt_size, char *cmdline_ptr, u64 initrd_addr, u64 initrd_size, efi_memory_desc_t *memory_map, unsigned long map_size, unsigned long desc_size, u32 desc_ver) update_fdt() argument
H A Defistub.h25 void *fdt, int new_fdt_size, char *cmdline_ptr,
H A DMakefile29 arm-deps := fdt_rw.c fdt_ro.c fdt_wip.c fdt.c fdt_empty_tree.c fdt_sw.c sort.c
34 lib-$(CONFIG_EFI_ARMSTUB) += arm-stub.o fdt.o string.o \
H A Defi-stub-helper.c38 * with the allocations for initrd and fdt more efficiently.
/linux-4.4.14/drivers/of/
H A DMakefile3 obj-$(CONFIG_OF_FLATTREE) += fdt.o
H A Dfdt.c807 const void *fdt = initial_boot_params; early_init_dt_scan_chosen_serial() local
809 offset = fdt_path_offset(fdt, "/chosen"); early_init_dt_scan_chosen_serial()
811 offset = fdt_path_offset(fdt, "/chosen@0"); early_init_dt_scan_chosen_serial()
815 p = fdt_getprop(fdt, offset, "stdout-path", &l); early_init_dt_scan_chosen_serial()
817 p = fdt_getprop(fdt, offset, "linux,stdout-path", &l); early_init_dt_scan_chosen_serial()
825 offset = fdt_path_offset_namelen(fdt, p, l); early_init_dt_scan_chosen_serial()
832 if (fdt_node_check_compatible(fdt, offset, match->compatible)) { early_init_dt_scan_chosen_serial()
837 addr = fdt_translate_address(fdt, offset); early_init_dt_scan_chosen_serial()
1163 __BIN_ATTR(fdt, S_IRUSR, of_fdt_raw_read, NULL, 0); of_fdt_raw_init()
1170 pr_warn("fdt: not creating '/sys/firmware/fdt': CRC check failed\n"); of_fdt_raw_init()
H A Dof_reserved_mem.c70 * res_mem_save_node() - save fdt node for second pass initialization
/linux-4.4.14/arch/mips/mti-malta/
H A Dmalta-dtshim.c51 static void __init append_memory(void *fdt, int root_off) append_memory() argument
62 mem_off = fdt_path_offset(fdt, "/memory"); append_memory()
110 mem_off = fdt_add_subnode(fdt, root_off, "memory"); append_memory()
114 err = fdt_setprop_string(fdt, mem_off, "device_type", "memory"); append_memory()
119 err = fdt_setprop(fdt, mem_off, "reg", mem_array, append_memory()
125 err = fdt_setprop(fdt, mem_off, "linux,usable-memory", mem_array, append_memory()
131 void __init *malta_dt_shim(void *fdt) malta_dt_shim() argument
136 if (fdt_check_header(fdt)) malta_dt_shim()
139 err = fdt_open_into(fdt, fdt_buf, sizeof(fdt_buf)); malta_dt_shim()
153 return fdt; malta_dt_shim()
H A Dmalta-setup.c254 void *fdt = __dtb_start; plat_mem_setup() local
256 fdt = malta_dt_shim(fdt); plat_mem_setup()
257 __dt_setup_arch(fdt); plat_mem_setup()
/linux-4.4.14/scripts/dtc/
H A Dflattree.c337 static void make_fdt_header(struct fdt_header *fdt, make_fdt_header() argument
346 memset(fdt, 0xff, sizeof(*fdt)); make_fdt_header()
348 fdt->magic = cpu_to_fdt32(FDT_MAGIC); make_fdt_header()
349 fdt->version = cpu_to_fdt32(vi->version); make_fdt_header()
350 fdt->last_comp_version = cpu_to_fdt32(vi->last_comp_version); make_fdt_header()
355 fdt->off_mem_rsvmap = cpu_to_fdt32(reserve_off); make_fdt_header()
356 fdt->off_dt_struct = cpu_to_fdt32(reserve_off + reservesize); make_fdt_header()
357 fdt->off_dt_strings = cpu_to_fdt32(reserve_off + reservesize make_fdt_header()
359 fdt->totalsize = cpu_to_fdt32(reserve_off + reservesize + dtsize + strsize); make_fdt_header()
362 fdt->boot_cpuid_phys = cpu_to_fdt32(boot_cpuid_phys); make_fdt_header()
364 fdt->size_dt_strings = cpu_to_fdt32(strsize); make_fdt_header()
366 fdt->size_dt_struct = cpu_to_fdt32(dtsize); make_fdt_header()
377 struct fdt_header fdt; dt_to_blob() local
393 make_fdt_header(&fdt, vi, reservebuf.len, dtbuf.len, strbuf.len, dt_to_blob()
400 padlen = minsize - fdt32_to_cpu(fdt.totalsize); dt_to_blob()
404 fdt32_to_cpu(fdt.totalsize), minsize); dt_to_blob()
411 int tsize = fdt32_to_cpu(fdt.totalsize); dt_to_blob()
413 fdt.totalsize = cpu_to_fdt32(tsize); dt_to_blob()
421 blob = data_append_data(blob, &fdt, vi->hdr_size); dt_to_blob()
811 struct fdt_header *fdt; dt_from_blob() local
854 fdt = (struct fdt_header *)blob; dt_from_blob()
855 fdt->magic = cpu_to_fdt32(magic); dt_from_blob()
856 fdt->totalsize = cpu_to_fdt32(totalsize); dt_from_blob()
875 off_dt = fdt32_to_cpu(fdt->off_dt_struct); dt_from_blob()
876 off_str = fdt32_to_cpu(fdt->off_dt_strings); dt_from_blob()
877 off_mem_rsvmap = fdt32_to_cpu(fdt->off_mem_rsvmap); dt_from_blob()
878 version = fdt32_to_cpu(fdt->version); dt_from_blob()
879 boot_cpuid_phys = fdt32_to_cpu(fdt->boot_cpuid_phys); dt_from_blob()
891 uint32_t size_str = fdt32_to_cpu(fdt->size_dt_strings); dt_from_blob()
900 size_dt = fdt32_to_cpu(fdt->size_dt_struct); dt_from_blob()
H A Dutil.h88 * @return Pointer to allocated buffer containing fdt, or NULL on error
105 * @param buffp Returns pointer to buffer containing fdt
122 * @param blob Poiner to buffer containing fdt
133 * @param blob Poiner to buffer containing fdt
H A Dfdtdump.c11 #include <fdt.h>
H A Dfdtput.c196 * Create a new node in the fdt.
318 * - pack fdt before writing main()
320 * - expand fdt if value doesn't fit main()
H A Ddtc.h36 #include <fdt.h>
/linux-4.4.14/arch/microblaze/include/asm/
H A Dsetup.h39 unsigned int fdt, unsigned int msr, unsigned int tlb0,
/linux-4.4.14/arch/h8300/kernel/
H A Dsetup.c62 void __init h8300_fdt_init(void *fdt, char *bootargs) h8300_fdt_init() argument
64 if (!fdt) h8300_fdt_init()
65 fdt = __dtb_start; h8300_fdt_init()
69 early_init_dt_scan(fdt); h8300_fdt_init()
/linux-4.4.14/include/linux/fsl/bestcomm/
H A Dbestcomm_priv.h56 u32 fdt; member in struct:bcom_tdt
76 u32 *fdt; member in struct:bcom_engine
330 u32 *fdt = &bcom_eng->tdt[task].fdt; bcom_set_task_pragma() local
331 *fdt = (*fdt & ~0xff) | pragma; bcom_set_task_pragma()
/linux-4.4.14/arch/openrisc/kernel/
H A Dsetup.c211 void __init or32_early_setup(void *fdt) or32_early_setup() argument
213 if (fdt) or32_early_setup()
214 pr_info("FDT at %p\n", fdt); or32_early_setup()
216 fdt = __dtb_start; or32_early_setup()
217 pr_info("Compiled-in FDT at %p\n", fdt); or32_early_setup()
219 early_init_devtree(fdt); or32_early_setup()
H A Dhead.S446 l.or r25,r0,r3 /* pointer to fdt */
572 /* check fdt header magic word */
573 l.lwz r3,0(r25) /* load magic from fdt into r3 */
579 /* magic number mismatch, set fdt pointer to null */
582 /* pass fdt pointer to or32_early_setup in r3 */
/linux-4.4.14/drivers/dma/bestcomm/
H A Dbestcomm.c291 bcom_eng->fdt = bcom_sram_alloc(fdt_size, BCOM_FDT_ALIGN, &fdt_pa); bcom_engine_init()
293 if (!bcom_eng->tdt || !bcom_eng->ctx || !bcom_eng->var || !bcom_eng->fdt) { bcom_engine_init()
299 bcom_sram_free(bcom_eng->fdt); bcom_engine_init()
307 memset(bcom_eng->fdt, 0x00, fdt_size); bcom_engine_init()
310 memcpy(&bcom_eng->fdt[48], fdt_ops, sizeof(fdt_ops)); bcom_engine_init()
320 bcom_eng->tdt[task].fdt = fdt_pa; bcom_engine_init()
359 bcom_sram_free(bcom_eng->fdt); bcom_engine_cleanup()
/linux-4.4.14/arch/microblaze/kernel/
H A Dsetup.c100 unsigned int fdt, unsigned int msr, unsigned int tlb0, machine_early_init()
149 if (fdt) machine_early_init()
150 pr_info("FDT at 0x%08x\n", fdt); machine_early_init()
99 machine_early_init(const char *cmdline, unsigned int ram, unsigned int fdt, unsigned int msr, unsigned int tlb0, unsigned int tlb1) machine_early_init() argument
H A Dvmlinux.lds.S45 _fdt_start = . ; /* place for fdt blob */
/linux-4.4.14/arch/microblaze/
H A DMakefile87 echo ' - stripped elf with fdt blob'
88 echo ' simpleImage.<dt>.unstrip - full ELF image with fdt blob'
/linux-4.4.14/arch/c6x/
H A DMakefile61 @echo ' - stripped elf with fdt blob'
/linux-4.4.14/arch/c6x/kernel/
H A Dvmlinux.lds.S93 _fdt_start = . ; /* place for fdt blob */
H A Dsetup.c273 void *fdt = _fdt_start; machine_init() local
288 * fdt is linked in blob. machine_init()
290 if (dtb && dtb != fdt) machine_init()
291 fdt = dtb; machine_init()
294 early_init_dt_scan(fdt); machine_init()
/linux-4.4.14/drivers/usb/host/
H A Dehci-ppc-of.c144 pr_debug("%s: no ohci offset in fdt\n", __FILE__); ehci_hcd_ppc_of_probe()
212 pr_debug("%s: no ohci offset in fdt\n", __FILE__); ehci_hcd_ppc_of_remove()
H A Dohci-ppc-of.c170 pr_debug("%s: cannot get ehci offset from fdt\n", __FILE__); ohci_hcd_ppc_of_probe()
/linux-4.4.14/arch/openrisc/include/asm/
H A Dpage.h37 * drivers/of/fdt.c
/linux-4.4.14/drivers/tty/serial/8250/
H A D8250_ingenic.c83 void *fdt = initial_boot_params; ingenic_early_console_setup_clock() local
87 offset = fdt_path_offset(fdt, "/ext"); ingenic_early_console_setup_clock()
91 prop = fdt_getprop(fdt, offset, "clock-frequency", NULL); ingenic_early_console_setup_clock()
/linux-4.4.14/drivers/scsi/qla2xxx/
H A Dqla_sup.c869 "fdt=0x%x flt=0x%x npiv=0x%x fcp_prif_cfg=0x%x.\n", qla2xxx_get_flt_info()
885 struct qla_fdt_layout *fdt; qla2xxx_get_fdt_info() local
892 fdt = (struct qla_fdt_layout *)req->ring; qla2xxx_get_fdt_info()
897 if (fdt->sig[0] != 'Q' || fdt->sig[1] != 'L' || fdt->sig[2] != 'I' || qla2xxx_get_fdt_info()
898 fdt->sig[3] != 'D') qla2xxx_get_fdt_info()
908 fdt->sig[0], le16_to_cpu(fdt->version)); qla2xxx_get_fdt_info()
910 (uint8_t *)fdt, sizeof(*fdt)); qla2xxx_get_fdt_info()
915 mid = le16_to_cpu(fdt->man_id); qla2xxx_get_fdt_info()
916 fid = le16_to_cpu(fdt->id); qla2xxx_get_fdt_info()
917 ha->fdt_wrt_disable = fdt->wrt_disable_bits; qla2xxx_get_fdt_info()
918 ha->fdt_wrt_enable = fdt->wrt_enable_bits; qla2xxx_get_fdt_info()
919 ha->fdt_wrt_sts_reg_cmd = fdt->wrt_sts_reg_cmd; qla2xxx_get_fdt_info()
921 ha->fdt_erase_cmd = fdt->erase_cmd; qla2xxx_get_fdt_info()
924 flash_conf_addr(ha, 0x0300 | fdt->erase_cmd); qla2xxx_get_fdt_info()
925 ha->fdt_block_size = le32_to_cpu(fdt->block_size); qla2xxx_get_fdt_info()
926 if (fdt->unprotect_sec_cmd) { qla2xxx_get_fdt_info()
928 fdt->unprotect_sec_cmd); qla2xxx_get_fdt_info()
929 ha->fdt_protect_sec_cmd = fdt->protect_sec_cmd ? qla2xxx_get_fdt_info()
930 flash_conf_addr(ha, 0x0300 | fdt->protect_sec_cmd): qla2xxx_get_fdt_info()
/linux-4.4.14/fs/proc/
H A Dfd.c39 struct fdtable *fdt = files_fdtable(files); seq_show() local
42 if (close_on_exec(fd, fdt)) seq_show()
/linux-4.4.14/drivers/scsi/qla4xxx/
H A Dql4_nx.c3819 "FLT[%s]: flt=0x%x fdt=0x%x boot=0x%x bootload=0x%x fw=0x%x chap=0x%x chap_size=0x%x ddb=0x%x ddb_size=0x%x\n", qla4_8xxx_get_flt_info()
3836 struct qla_fdt_layout *fdt; qla4_82xx_get_fdt_info() local
3845 fdt = (struct qla_fdt_layout *)ha->request_ring; qla4_82xx_get_fdt_info()
3852 if (fdt->sig[0] != 'Q' || fdt->sig[1] != 'L' || fdt->sig[2] != 'I' || qla4_82xx_get_fdt_info()
3853 fdt->sig[3] != 'D') qla4_82xx_get_fdt_info()
3862 "checksum=0x%x id=%c version=0x%x.\n", chksum, fdt->sig[0], qla4_82xx_get_fdt_info()
3863 le16_to_cpu(fdt->version))); qla4_82xx_get_fdt_info()
3868 mid = le16_to_cpu(fdt->man_id); qla4_82xx_get_fdt_info()
3869 fid = le16_to_cpu(fdt->id); qla4_82xx_get_fdt_info()
3870 hw->fdt_wrt_disable = fdt->wrt_disable_bits; qla4_82xx_get_fdt_info()
3871 hw->fdt_erase_cmd = flash_conf_addr(hw, 0x0300 | fdt->erase_cmd); qla4_82xx_get_fdt_info()
3872 hw->fdt_block_size = le32_to_cpu(fdt->block_size); qla4_82xx_get_fdt_info()
3874 if (fdt->unprotect_sec_cmd) { qla4_82xx_get_fdt_info()
3876 fdt->unprotect_sec_cmd); qla4_82xx_get_fdt_info()
3877 hw->fdt_protect_sec_cmd = fdt->protect_sec_cmd ? qla4_82xx_get_fdt_info()
3878 flash_conf_addr(hw, 0x0300 | fdt->protect_sec_cmd) : qla4_82xx_get_fdt_info()
/linux-4.4.14/arch/mips/cavium-octeon/
H A Dsetup.c1089 const void *fdt; device_tree_init() local
1094 fdt = &__appended_dtb; device_tree_init()
1100 fdt = phys_to_virt(octeon_bootinfo->fdt_addr); device_tree_init()
1101 if (fdt_check_header(fdt)) device_tree_init()
1106 fdt = &__dtb_octeon_68xx_begin; device_tree_init()
1109 fdt = &__dtb_octeon_3xxx_begin; device_tree_init()
1113 initial_boot_params = (void *)fdt; device_tree_init()
/linux-4.4.14/lib/
H A DMakefile168 libfdt_files = fdt.o fdt_ro.o fdt_wip.o fdt_rw.o fdt_sw.o fdt_strerror.o \
/linux-4.4.14/arch/nios2/kernel/
H A Dsetup.c100 * @r6: initrd end or fdt
/linux-4.4.14/drivers/net/ethernet/qlogic/qlcnic/
H A Dqlcnic_sysfs.c1006 if (adapter->ahw->fdt.mfg_id == adapter->flash_mfg_id) { qlcnic_83xx_sysfs_flash_bulk_write()
1021 if (adapter->ahw->fdt.mfg_id == adapter->flash_mfg_id) { qlcnic_83xx_sysfs_flash_bulk_write()
1039 if (adapter->ahw->fdt.mfg_id == adapter->flash_mfg_id) { qlcnic_83xx_sysfs_flash_bulk_write()
1074 if (adapter->ahw->fdt.mfg_id == adapter->flash_mfg_id) { qlcnic_83xx_sysfs_flash_write()
1086 if (adapter->ahw->fdt.mfg_id == adapter->flash_mfg_id) { qlcnic_83xx_sysfs_flash_write()
1103 if (adapter->ahw->fdt.mfg_id == adapter->flash_mfg_id) { qlcnic_83xx_sysfs_flash_write()
H A Dqlcnic_83xx_hw.c2721 cmd = adapter->ahw->fdt.write_statusreg_cmd; qlcnic_83xx_enable_flash_write()
2725 adapter->ahw->fdt.write_enable_bits); qlcnic_83xx_enable_flash_write()
2741 adapter->ahw->fdt.write_statusreg_cmd)); qlcnic_83xx_disable_flash_write()
2743 adapter->ahw->fdt.write_disable_bits); qlcnic_83xx_disable_flash_write()
2793 memset(&adapter->ahw->fdt, 0, fdt_size); qlcnic_83xx_read_flash_descriptor_table()
2795 (u8 *)&adapter->ahw->fdt, qlcnic_83xx_read_flash_descriptor_table()
2797 qlcnic_swap32_buffer((u32 *)&adapter->ahw->fdt, count); qlcnic_83xx_read_flash_descriptor_table()
2811 if (adapter->ahw->fdt.mfg_id == adapter->flash_mfg_id) { qlcnic_83xx_erase_flash_sector()
2836 cmd = QLC_83XX_FLASH_FDT_ERASE_DEF_SIG | adapter->ahw->fdt.erase_cmd; qlcnic_83xx_erase_flash_sector()
2837 if (adapter->ahw->fdt.mfg_id == adapter->flash_mfg_id) qlcnic_83xx_erase_flash_sector()
2853 if (adapter->ahw->fdt.mfg_id == adapter->flash_mfg_id) { qlcnic_83xx_erase_flash_sector()
H A Dqlcnic.h525 struct qlcnic_fdt fdt; member in struct:qlcnic_hardware_context
/linux-4.4.14/arch/metag/kernel/
H A Dsetup.c258 /* append the bootloader cmdline to any builtin fdt cmdline */ setup_arch()

Completed in 1776 milliseconds