Home
last modified time | relevance | path

Searched refs:fdt (Results 1 – 25 of 126) sorted by relevance

123456

/linux/scripts/dtc/libfdt/
H A Dfdt_sw.c13 static int fdt_sw_probe_(void *fdt) in fdt_sw_probe_() argument
16 if (fdt_magic(fdt) == FDT_MAGIC) in fdt_sw_probe_()
18 else if (fdt_magic(fdt) != FDT_SW_MAGIC) in fdt_sw_probe_()
25 #define FDT_SW_PROBE(fdt) \ argument
28 if ((err = fdt_sw_probe_(fdt)) != 0) \
38 static int fdt_sw_probe_memrsv_(void *fdt) in fdt_sw_probe_memrsv_() argument
40 int err = fdt_sw_probe_(fdt); in fdt_sw_probe_memrsv_()
44 if (!can_assume(VALID_INPUT) && fdt_off_dt_strings(fdt) != 0) in fdt_sw_probe_memrsv_()
49 #define FDT_SW_PROBE_MEMRSV(fdt) \ argument
52 if ((err = fdt_sw_probe_memrsv_(fdt)) != 0) \
[all …]
H A Dlibfdt.h134 const void *fdt_offset_ptr(const void *fdt, int offset, unsigned int checklen);
136 static inline void *fdt_offset_ptr_w(void *fdt, int offset, int checklen) in fdt_offset_ptr_w() argument
138 return (void *)(uintptr_t)fdt_offset_ptr(fdt, offset, checklen); in fdt_offset_ptr_w()
155 uint32_t fdt_next_tag(const void *fdt, int offset, int *nextoffset);
221 int fdt_next_node(const void *fdt, int offset, int *depth);
230 int fdt_first_subnode(const void *fdt, int offset);
243 int fdt_next_subnode(const void *fdt, int offset);
267 #define fdt_for_each_subnode(node, fdt, parent) \ argument
268 for (node = fdt_first_subnode(fdt, parent); \
270 node = fdt_next_subnode(fdt, node))
[all …]
H A Dfdt_rw.c13 static int fdt_blocks_misordered_(const void *fdt, in fdt_blocks_misordered_() argument
16 return (fdt_off_mem_rsvmap(fdt) < FDT_ALIGN(sizeof(struct fdt_header), 8)) in fdt_blocks_misordered_()
17 || (fdt_off_dt_struct(fdt) < in fdt_blocks_misordered_()
18 (fdt_off_mem_rsvmap(fdt) + mem_rsv_size)) in fdt_blocks_misordered_()
19 || (fdt_off_dt_strings(fdt) < in fdt_blocks_misordered_()
20 (fdt_off_dt_struct(fdt) + struct_size)) in fdt_blocks_misordered_()
21 || (fdt_totalsize(fdt) < in fdt_blocks_misordered_()
22 (fdt_off_dt_strings(fdt) + fdt_size_dt_strings(fdt))); in fdt_blocks_misordered_()
25 static int fdt_rw_probe_(void *fdt) in fdt_rw_probe_() argument
29 FDT_RO_PROBE(fdt); in fdt_rw_probe_()
[all …]
H A Dfdt_ro.c13 static int fdt_nodename_eq_(const void *fdt, int offset, in fdt_nodename_eq_() argument
17 const char *p = fdt_get_name(fdt, offset, &olen); in fdt_nodename_eq_()
34 const char *fdt_get_string(const void *fdt, int stroffset, int *lenp) in fdt_get_string() argument
43 s = (const char *)fdt + fdt_off_dt_strings(fdt) + stroffset; in fdt_get_string()
49 totalsize = fdt_ro_probe_(fdt); in fdt_get_string()
55 absoffset = stroffset + fdt_off_dt_strings(fdt); in fdt_get_string()
60 if (fdt_magic(fdt) == FDT_MAGIC) { in fdt_get_string()
63 if (can_assume(LATEST) || fdt_version(fdt) >= 17) { in fdt_get_string()
64 if ((unsigned)stroffset >= fdt_size_dt_strings(fdt)) in fdt_get_string()
66 if ((fdt_size_dt_strings(fdt) - stroffset) < len) in fdt_get_string()
[all …]
H A Dfdt.c18 int32_t fdt_ro_probe_(const void *fdt) in fdt_ro_probe_() argument
20 uint32_t totalsize = fdt_totalsize(fdt); in fdt_ro_probe_()
26 if ((uintptr_t)fdt & 7) in fdt_ro_probe_()
29 if (fdt_magic(fdt) == FDT_MAGIC) { in fdt_ro_probe_()
32 if (fdt_version(fdt) < FDT_FIRST_SUPPORTED_VERSION) in fdt_ro_probe_()
34 if (fdt_last_comp_version(fdt) > in fdt_ro_probe_()
38 } else if (fdt_magic(fdt) == FDT_SW_MAGIC) { in fdt_ro_probe_()
40 if (!can_assume(VALID_INPUT) && fdt_size_dt_struct(fdt) == 0) in fdt_ro_probe_()
83 size_t fdt_header_size(const void *fdt) in fdt_header_size() argument
86 fdt_header_size_(fdt_version(fdt)); in fdt_header_size()
[all …]
H A Dlibfdt_internal.h13 int32_t fdt_ro_probe_(const void *fdt);
14 #define FDT_RO_PROBE(fdt) \ argument
18 if ((totalsize_ = fdt_ro_probe_(fdt)) < 0) \
23 int fdt_check_node_offset_(const void *fdt, int offset);
24 int fdt_check_prop_offset_(const void *fdt, int offset);
34 int fdt_node_end_offset_(void *fdt, int nodeoffset);
36 static inline const void *fdt_offset_ptr_(const void *fdt, int offset) in fdt_offset_ptr_() argument
38 return (const char *)fdt + fdt_off_dt_struct(fdt) + offset; in fdt_offset_ptr_()
41 static inline void *fdt_offset_ptr_w_(void *fdt, int offset) in fdt_offset_ptr_w_() argument
43 return (void *)(uintptr_t)fdt_offset_ptr_(fdt, offset); in fdt_offset_ptr_w_()
[all …]
H A Dfdt_overlay.c43 int fdt_overlay_target_offset(const void *fdt, const void *fdto, in fdt_overlay_target_offset() argument
60 ret = fdt_path_offset(fdt, path); in fdt_overlay_target_offset()
64 ret = fdt_node_offset_by_phandle(fdt, phandle); in fdt_overlay_target_offset()
101 static int overlay_phandle_add_offset(void *fdt, int node, in overlay_phandle_add_offset() argument
107 valp = fdt_getprop_w(fdt, node, name, &len); in overlay_phandle_add_offset()
373 static int overlay_fixup_phandle(void *fdt, void *fdto, int symbols_off, in overlay_fixup_phandle() argument
393 symbol_path = fdt_getprop(fdt, symbols_off, label, &prop_len); in overlay_fixup_phandle()
397 symbol_off = fdt_path_offset(fdt, symbol_path); in overlay_fixup_phandle()
401 phandle = fdt_get_phandle(fdt, symbol_off); in overlay_fixup_phandle()
472 static int overlay_fixup_phandles(void *fdt, void *fdto) in overlay_fixup_phandles() argument
[all …]
H A Dfdt_wip.c13 int fdt_setprop_inplace_namelen_partial(void *fdt, int nodeoffset, in fdt_setprop_inplace_namelen_partial() argument
21 propval = fdt_getprop_namelen_w(fdt, nodeoffset, name, namelen, in fdt_setprop_inplace_namelen_partial()
33 int fdt_setprop_inplace(void *fdt, int nodeoffset, const char *name, in fdt_setprop_inplace() argument
39 propval = fdt_getprop(fdt, nodeoffset, name, &proplen); in fdt_setprop_inplace()
46 return fdt_setprop_inplace_namelen_partial(fdt, nodeoffset, name, in fdt_setprop_inplace()
59 int fdt_nop_property(void *fdt, int nodeoffset, const char *name) in fdt_nop_property() argument
64 prop = fdt_get_property_w(fdt, nodeoffset, name, &len); in fdt_nop_property()
73 int fdt_node_end_offset_(void *fdt, int offset) in fdt_node_end_offset_() argument
78 offset = fdt_next_node(fdt, offset, &depth); in fdt_node_end_offset_()
83 int fdt_nop_node(void *fdt, int nodeoffset) in fdt_nop_node() argument
[all …]
H A Dfdt_addresses.c14 static int fdt_cells(const void *fdt, int nodeoffset, const char *name) in fdt_cells() argument
20 c = fdt_getprop(fdt, nodeoffset, name, &len); in fdt_cells()
34 int fdt_address_cells(const void *fdt, int nodeoffset) in fdt_address_cells() argument
38 val = fdt_cells(fdt, nodeoffset, "#address-cells"); in fdt_address_cells()
46 int fdt_size_cells(const void *fdt, int nodeoffset) in fdt_size_cells() argument
50 val = fdt_cells(fdt, nodeoffset, "#size-cells"); in fdt_size_cells()
57 int fdt_appendprop_addrrange(void *fdt, int parent, int nodeoffset, in fdt_appendprop_addrrange() argument
63 ret = fdt_address_cells(fdt, parent); in fdt_appendprop_addrrange()
68 ret = fdt_size_cells(fdt, parent); in fdt_appendprop_addrrange()
99 return fdt_appendprop(fdt, nodeoffset, name, data, in fdt_appendprop_addrrange()
/linux/drivers/of/
H A Dkexec.c40 static int fdt_find_and_del_mem_rsv(void *fdt, unsigned long start, unsigned long size) in fdt_find_and_del_mem_rsv() argument
42 int i, ret, num_rsvs = fdt_num_mem_rsv(fdt); in fdt_find_and_del_mem_rsv()
47 ret = fdt_get_mem_rsv(fdt, i, &rsv_start, &rsv_size); in fdt_find_and_del_mem_rsv()
54 ret = fdt_del_mem_rsv(fdt, i); in fdt_find_and_del_mem_rsv()
192 static void remove_ima_buffer(void *fdt, int chosen_node) in remove_ima_buffer() argument
202 prop = fdt_getprop(fdt, chosen_node, "linux,ima-kexec-buffer", &len); in remove_ima_buffer()
207 fdt_delprop(fdt, chosen_node, "linux,ima-kexec-buffer"); in remove_ima_buffer()
211 ret = fdt_find_and_del_mem_rsv(fdt, addr, size); in remove_ima_buffer()
225 static int setup_ima_buffer(const struct kimage *image, void *fdt, in setup_ima_buffer() argument
233 ret = fdt_appendprop_addrrange(fdt, 0, chosen_node, in setup_ima_buffer()
[all …]
/linux/fs/
H A Dfile.c103 static void __free_fdtable(struct fdtable *fdt) in __free_fdtable() argument
105 kvfree(fdt->fd); in __free_fdtable()
106 kvfree(fdt->open_fds); in __free_fdtable()
107 kfree(fdt); in __free_fdtable()
118 #define fdt_words(fdt) ((fdt)->max_fds / BITS_PER_LONG) // words in ->open_fds argument
164 struct fdtable *fdt; in alloc_fdtable() local
215 fdt = kmalloc_obj(struct fdtable, GFP_KERNEL_ACCOUNT); in alloc_fdtable()
216 if (!fdt) in alloc_fdtable()
218 fdt->max_fds = nr; in alloc_fdtable()
222 fdt->fd = data; in alloc_fdtable()
[all …]
/linux/arch/arm/boot/compressed/
H A Datags_to_fdt.c15 static int node_offset(void *fdt, const char *node_path) in node_offset() argument
17 int offset = fdt_path_offset(fdt, node_path); in node_offset()
20 offset = fdt_add_subnode(fdt, 0, node_path + 1); in node_offset()
24 static int setprop(void *fdt, const char *node_path, const char *property, in setprop() argument
27 int offset = node_offset(fdt, node_path); in setprop()
30 return fdt_setprop(fdt, offset, property, val_array, size); in setprop()
33 static int setprop_string(void *fdt, const char *node_path, in setprop_string() argument
36 int offset = node_offset(fdt, node_path); in setprop_string()
39 return fdt_setprop_string(fdt, offset, property, string); in setprop_string()
42 static int setprop_cell(void *fdt, const char *node_path, in setprop_cell() argument
[all …]
H A Dfdt_check_mem_start.c8 static const void *get_prop(const void *fdt, const char *node_path, in get_prop() argument
14 offset = fdt_path_offset(fdt, node_path); in get_prop()
18 prop = fdt_getprop(fdt, offset, property, &len); in get_prop()
25 static uint32_t get_cells(const void *fdt, const char *name) in get_cells() argument
27 const fdt32_t *prop = get_prop(fdt, "/", name, sizeof(fdt32_t)); in get_cells()
64 uint32_t fdt_check_mem_start(uint32_t mem_start, const void *fdt) in fdt_check_mem_start() argument
73 if (!fdt) in fdt_check_mem_start()
76 if (fdt_magic(fdt) != FDT_MAGIC) in fdt_check_mem_start()
80 addr_cells = get_cells(fdt, "#address-cells"); in fdt_check_mem_start()
81 size_cells = get_cells(fdt, "#size-cells"); in fdt_check_mem_start()
[all …]
/linux/drivers/firmware/efi/libstub/
H A Dfdt.c19 static void fdt_update_cell_size(void *fdt) in fdt_update_cell_size() argument
23 offset = fdt_path_offset(fdt, "/"); in fdt_update_cell_size()
26 fdt_setprop_u32(fdt, offset, "#address-cells", EFI_DT_ADDR_CELLS_DEFAULT); in fdt_update_cell_size()
27 fdt_setprop_u32(fdt, offset, "#size-cells", EFI_DT_SIZE_CELLS_DEFAULT); in fdt_update_cell_size()
31 void *fdt, int new_fdt_size, char *cmdline_ptr) in update_fdt() argument
55 status = fdt_open_into(orig_fdt, fdt, new_fdt_size); in update_fdt()
57 status = fdt_create_empty_tree(fdt, new_fdt_size); in update_fdt()
63 fdt_update_cell_size(fdt); in update_fdt()
74 num_rsv = fdt_num_mem_rsv(fdt); in update_fdt()
76 fdt_del_mem_rsv(fdt, num_rsv); in update_fdt()
[all …]
/linux/lib/
H A Dtest_kho.c39 struct folio *fdt; member
101 void *fdt = folio_address(state->fdt); in kho_test_prepare_fdt() local
104 err = fdt_create(fdt, fdt_size); in kho_test_prepare_fdt()
105 err |= fdt_finish_reservemap(fdt); in kho_test_prepare_fdt()
106 err |= fdt_begin_node(fdt, ""); in kho_test_prepare_fdt()
107 err |= fdt_property(fdt, "compatible", compatible, sizeof(compatible)); in kho_test_prepare_fdt()
108 err |= fdt_property(fdt, "magic", &magic, sizeof(magic)); in kho_test_prepare_fdt()
110 err |= fdt_begin_node(fdt, "data"); in kho_test_prepare_fdt()
111 err |= fdt_property(fdt, "nr_folios", &state->nr_folios, in kho_test_prepare_fdt()
113 err |= fdt_property(fdt, "folios_info", &state->folios_info_phys, in kho_test_prepare_fdt()
[all …]
/linux/arch/mips/generic/
H A Dboard-sead3.c43 static __init int append_memory(void *fdt) in append_memory() argument
45 return yamon_dt_append_memory(fdt, mem_regions); in append_memory()
48 static __init int remove_gic(void *fdt) in remove_gic() argument
61 gic_off = fdt_node_offset_by_compatible(fdt, -1, "mti,gic"); in remove_gic()
67 err = fdt_nop_node(fdt, gic_off); in remove_gic()
73 cpu_off = fdt_node_offset_by_compatible(fdt, -1, in remove_gic()
80 cpu_phandle = fdt_get_phandle(fdt, cpu_off); in remove_gic()
86 uart_off = fdt_node_offset_by_compatible(fdt, -1, "ns16550a"); in remove_gic()
88 err = fdt_setprop_u32(fdt, uart_off, "interrupt-parent", in remove_gic()
96 err = fdt_setprop_u32(fdt, uart_off, "interrupts", in remove_gic()
[all …]
H A Dinit.c23 static __initconst const void *fdt; variable
30 BUG_ON(!fdt); in prom_init()
38 if (fdt) in plat_get_fdt()
40 return (void *)fdt; in plat_get_fdt()
42 fdt = (void *)get_fdt(); in plat_get_fdt()
43 if (fdt && !fdt_check_header(fdt)) { in plat_get_fdt()
50 match = mips_machine_is_compatible(check_mach, fdt); in plat_get_fdt()
80 fdt = mach->fdt; in plat_get_fdt()
82 return (void *)fdt; in plat_get_fdt()
94 fdt = NULL; in plat_fdt_relocated()
[all …]
H A Dyamon-dt.c20 __init int yamon_dt_append_cmdline(void *fdt) in yamon_dt_append_cmdline() argument
25 chosen_off = fdt_path_offset(fdt, "/chosen"); in yamon_dt_append_cmdline()
27 chosen_off = fdt_add_subnode(fdt, 0, "chosen"); in yamon_dt_append_cmdline()
34 err = fdt_setprop_string(fdt, chosen_off, "bootargs", fw_getcmdline()); in yamon_dt_append_cmdline()
75 __init int yamon_dt_append_memory(void *fdt, in yamon_dt_append_memory() argument
122 mem_off = fdt_path_offset(fdt, "/memory"); in yamon_dt_append_memory()
124 mem_off = fdt_add_subnode(fdt, 0, "memory"); in yamon_dt_append_memory()
130 err = fdt_setprop_string(fdt, mem_off, "device_type", "memory"); in yamon_dt_append_memory()
138 err = fdt_setprop(fdt, mem_off, "reg", in yamon_dt_append_memory()
147 err = fdt_setprop(fdt, mem_off, "linux,usable-memory", in yamon_dt_append_memory()
[all …]
/linux/arch/riscv/kernel/pi/
H A Dfdt_early.c38 static bool fdt_device_is_available(const void *fdt, int node) in fdt_device_is_available() argument
43 status = fdt_getprop(fdt, node, "status", &statlen); in fdt_device_is_available()
56 static int fdt_node_name_eq(const void *fdt, int offset, in fdt_node_name_eq() argument
61 const char *p = fdt_get_name(fdt, offset, &olen); in fdt_node_name_eq()
138 static bool early_cpu_isa_ext_available(const void *fdt, int node, const char *ext_name) in early_cpu_isa_ext_available() argument
143 prop = fdt_getprop(fdt, node, "riscv,isa-extensions", &len); in early_cpu_isa_ext_available()
147 prop = fdt_getprop(fdt, node, "riscv,isa", &len); in early_cpu_isa_ext_available()
163 bool fdt_early_match_extension_isa(const void *fdt, const char *ext_name) in fdt_early_match_extension_isa() argument
168 parent = fdt_path_offset(fdt, "/cpus"); in fdt_early_match_extension_isa()
172 fdt_for_each_subnode(node, fdt, parent) { in fdt_early_match_extension_isa()
[all …]
/linux/arch/powerpc/boot/
H A Dlibfdt-wrapper.c40 static void *fdt; variable
47 int size = fdt_totalsize(fdt); in expand_buf()
54 rc = fdt_open_into(fdt, buf, size); in expand_buf()
59 fdt = buf; in expand_buf()
64 return offset_devp(fdt_path_offset(fdt, path)); in fdt_wrapper_finddevice()
73 p = fdt_getprop(fdt, devp_offset(devp), name, &len); in fdt_wrapper_getprop()
85 rc = fdt_setprop(fdt, devp_offset(devp), name, buf, len); in fdt_wrapper_setprop()
88 rc = fdt_setprop(fdt, devp_offset(devp), name, buf, len); in fdt_wrapper_setprop()
96 return fdt_del_node(fdt, devp_offset(devp)); in fdt_wrapper_del_node()
101 return offset_devp(fdt_parent_offset(fdt, devp_offset(devp))); in fdt_wrapper_get_parent()
[all …]
/linux/arch/powerpc/mm/nohash/
H A Dkaslr_booke.c40 static __init void kaslr_get_cmdline(void *fdt) in kaslr_get_cmdline() argument
64 static unsigned long __init get_boot_seed(void *fdt) in get_boot_seed() argument
70 hash = rotate_xor(hash, fdt, fdt_totalsize(fdt)); in get_boot_seed()
75 static __init u64 get_kaslr_seed(void *fdt) in get_kaslr_seed() argument
81 node = fdt_path_offset(fdt, "/chosen"); in get_kaslr_seed()
85 prop = fdt_getprop_w(fdt, node, "kaslr-seed", &len); in get_kaslr_seed()
99 static __init bool overlaps_reserved_region(const void *fdt, u32 start, in overlaps_reserved_region() argument
106 for (i = 0; i < fdt_num_mem_rsv(fdt); i++) { in overlaps_reserved_region()
107 if (fdt_get_mem_rsv(fdt, i, &base, &size) < 0) in overlaps_reserved_region()
117 for (subnode = fdt_first_subnode(fdt, regions.reserved_mem); in overlaps_reserved_region()
[all …]
/linux/arch/mips/mti-malta/
H A Dmalta-dtshim.c131 static void __init append_memory(void *fdt, int root_off) in append_memory() argument
144 mem_off = fdt_path_offset(fdt, "/memory"); in append_memory()
206 mem_off = fdt_add_subnode(fdt, root_off, "memory"); in append_memory()
210 err = fdt_setprop_string(fdt, mem_off, "device_type", "memory"); in append_memory()
215 err = fdt_setprop(fdt, mem_off, "reg", mem_array, in append_memory()
221 err = fdt_setprop(fdt, mem_off, "linux,usable-memory", mem_array, in append_memory()
227 static void __init remove_gic(void *fdt) in remove_gic() argument
254 gic_off = fdt_node_offset_by_compatible(fdt, -1, "mti,gic"); in remove_gic()
261 err = fdt_nop_node(fdt, gic_off); in remove_gic()
265 i8259_off = fdt_node_offset_by_compatible(fdt, -1, "intel,i8259"); in remove_gic()
[all …]
/linux/tools/testing/selftests/net/
H A Dtxring_overwrite.c90 int fdt; in setup_tx() local
92 fdt = socket(PF_PACKET, SOCK_RAW, 0); in setup_tx()
93 if (fdt == -1) in setup_tx()
102 if (bind(fdt, (void *)&laddr, sizeof(laddr))) in setup_tx()
110 if (setsockopt(fdt, SOL_PACKET, PACKET_TX_RING, in setup_tx()
115 PROT_READ | PROT_WRITE, MAP_SHARED, fdt, 0); in setup_tx()
119 return fdt; in setup_tx()
122 static void send_pkt(int fdt, void *slot, char payload_char) in send_pkt() argument
135 ret = sendto(fdt, NULL, 0, 0, NULL, 0); in send_pkt()
162 int fdr, fdt, ret = 0; in main() local
[all …]
/linux/arch/powerpc/kexec/
H A Dfile_load_64.c194 static int add_usable_mem_property(void *fdt, struct device_node *dn, in add_usable_mem_property() argument
212 node = fdt_path_offset(fdt, path); in add_usable_mem_property()
254 ret = fdt_setprop(fdt, node, "linux,usable-memory", um_info->buf, in add_usable_mem_property()
272 static int update_usable_mem_fdt(void *fdt, struct crash_mem *usable_mem) in update_usable_mem_fdt() argument
283 node = fdt_path_offset(fdt, "/ibm,dynamic-reconfiguration-memory"); in update_usable_mem_fdt()
309 ret = fdt_setprop(fdt, node, "linux,drconf-usable-memory", in update_usable_mem_fdt()
323 ret = add_usable_mem_property(fdt, dn, &um_info); in update_usable_mem_fdt()
529 const void *fdt, unsigned long kernel_load_addr, in setup_purgatory_ppc64() argument
535 ret = setup_purgatory(image, slave_code, fdt, kernel_load_addr, in setup_purgatory_ppc64()
700 static int copy_property(void *fdt, int node_offset, const struct device_node *dn, in copy_property() argument
[all …]
H A Delf_64.c36 void *fdt; in elf64_load() local
111 fdt = of_kexec_alloc_and_setup_fdt(image, initrd_load_addr, in elf64_load()
114 if (!fdt) { in elf64_load()
120 ret = setup_new_fdt_ppc64(image, fdt, rmem); in elf64_load()
125 fdt_pack(fdt); in elf64_load()
127 kbuf.buffer = fdt; in elf64_load()
128 kbuf.bufsz = kbuf.memsz = fdt_totalsize(fdt); in elf64_load()
137 image->arch.fdt = fdt; in elf64_load()
144 ret = setup_purgatory_ppc64(image, slave_code, fdt, kernel_load_addr, in elf64_load()
152 kvfree(fdt); in elf64_load()

123456