| /linux/scripts/dtc/libfdt/ |
| H A D | fdt_sw.c | 13 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 D | fdt_ro.c | 13 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 D | fdt_wip.c | 13 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 D | fdt_addresses.c | 14 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 D | kexec.c | 40 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() 201 static void remove_ima_buffer(void *fdt, int chosen_node) in remove_ima_buffer() argument 211 prop = fdt_getprop(fdt, chosen_node, "linux,ima-kexec-buffer", &len); in remove_ima_buffer() 216 fdt_delprop(fdt, chosen_node, "linux,ima-kexec-buffer"); in remove_ima_buffer() 220 ret = fdt_find_and_del_mem_rsv(fdt, addr, size); in remove_ima_buffer() 234 static int setup_ima_buffer(const struct kimage *image, void *fdt, in setup_ima_buffer() argument 242 ret = fdt_appendprop_addrrange(fdt, 0, chosen_node, in setup_ima_buffer() [all …]
|
| /linux/arch/arm/boot/compressed/ |
| H A D | atags_to_fdt.c | 15 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 D | fdt_check_mem_start.c | 8 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 D | fdt.c | 19 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 …]
|
| H A D | riscv.c | 20 const void *fdt; in get_boot_hartid_from_fdt() local 24 fdt = get_efi_config_table(DEVICE_TREE_GUID); in get_boot_hartid_from_fdt() 25 if (!fdt) in get_boot_hartid_from_fdt() 28 chosen_node = fdt_path_offset(fdt, "/chosen"); in get_boot_hartid_from_fdt() 32 prop = fdt_getprop((void *)fdt, chosen_node, "boot-hartid", &len); in get_boot_hartid_from_fdt() 84 void __noreturn efi_enter_kernel(unsigned long entrypoint, unsigned long fdt, in efi_enter_kernel() argument 97 jump_kernel(hartid, fdt); in efi_enter_kernel()
|
| /linux/arch/mips/generic/ |
| H A D | board-sead3.c | 43 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 D | init.c | 23 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 D | yamon-dt.c | 20 __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 …]
|
| H A D | board-realtek.c | 14 static __init int realtek_add_initrd(void *fdt) in realtek_add_initrd() argument 19 node = fdt_path_offset(fdt, "/chosen"); in realtek_add_initrd() 33 err = fdt_setprop_u32(fdt, node, "linux,initrd-start", start); in realtek_add_initrd() 39 err = fdt_setprop_u32(fdt, node, "linux,initrd-end", start + size); in realtek_add_initrd() 53 static __init const void *realtek_fixup_fdt(const void *fdt, const void *match_data) in realtek_fixup_fdt() argument 58 if (fdt_check_header(fdt)) in realtek_fixup_fdt() 63 err = apply_mips_fdt_fixups(fdt_buf, sizeof(fdt_buf), fdt, realtek_fdt_fixups); in realtek_fixup_fdt()
|
| H A D | board-ingenic.c | 68 static __init void ingenic_force_12M_ext(const void *fdt, unsigned int mask) in ingenic_force_12M_ext() argument 76 offset = fdt_path_offset(fdt, "/ext"); in ingenic_force_12M_ext() 80 prop = fdt_getprop(fdt, offset, "clock-frequency", NULL); in ingenic_force_12M_ext() 108 static __init const void *ingenic_fixup_fdt(const void *fdt, const void *match_data) in ingenic_fixup_fdt() argument 114 if (!fdt_node_check_compatible(fdt, 0, "qi,lb60") && in ingenic_fixup_fdt() 115 fdt_path_offset(fdt, "/memory") < 0) in ingenic_fixup_fdt() 124 ingenic_force_12M_ext(fdt, JZ4750_CGU_CPCCR_ECS); in ingenic_fixup_fdt() 127 ingenic_force_12M_ext(fdt, JZ4760_CGU_CPCCR_ECS); in ingenic_fixup_fdt() 133 return fdt; in ingenic_fixup_fdt()
|
| /linux/lib/ |
| H A D | test_kho.c | 38 struct folio *fdt; member 100 void *fdt = folio_address(state->fdt); in kho_test_prepare_fdt() local 103 err = fdt_create(fdt, fdt_size); in kho_test_prepare_fdt() 104 err |= fdt_finish_reservemap(fdt); in kho_test_prepare_fdt() 105 err |= fdt_begin_node(fdt, ""); in kho_test_prepare_fdt() 106 err |= fdt_property(fdt, "compatible", compatible, sizeof(compatible)); in kho_test_prepare_fdt() 107 err |= fdt_property(fdt, "magic", &magic, sizeof(magic)); in kho_test_prepare_fdt() 109 err |= fdt_begin_node(fdt, "data"); in kho_test_prepare_fdt() 110 err |= fdt_property(fdt, "nr_folios", &state->nr_folios, in kho_test_prepare_fdt() 112 err |= fdt_property(fdt, "folios_info", &state->folios_info_phys, in kho_test_prepare_fdt() [all …]
|
| /linux/arch/riscv/kernel/pi/ |
| H A D | fdt_early.c | 38 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 D | libfdt-wrapper.c | 40 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 D | kaslr_booke.c | 40 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 D | malta-dtshim.c | 131 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 D | txring_overwrite.c | 90 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 …]
|
| H A D | udpgso.c | 429 static void run_one(struct testcase *test, int fdt, int fdr, in run_one() argument 442 if (setsockopt(fdt, IPPROTO_IPV6, IPV6_HOPOPTS, in run_one() 449 if (setsockopt(fdt, SOL_UDP, UDP_SEGMENT, &val, sizeof(val))) in run_one() 453 sent = send_one(fdt, test->tlen, test->gso_len, addr, alen); in run_one() 460 if (setsockopt(fdt, IPPROTO_IPV6, IPV6_HOPOPTS, NULL, 0)) in run_one() 497 static void run_all(int fdt, int fdr, struct sockaddr *addr, socklen_t alen) in run_all() argument 507 run_one(test, fdt, fdr, addr, alen); in run_all() 514 int fdr, fdt, val; in run_test() local 529 fdt = socket(addr->sa_family, SOCK_DGRAM, 0); in run_test() 530 if (fdt == -1) in run_test() [all …]
|
| /linux/arch/powerpc/kexec/ |
| H A D | elf_64.c | 36 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()
|
| /linux/kernel/liveupdate/ |
| H A D | kexec_handover_debugfs.c | 27 const char *name, const void *fdt) in __kho_debugfs_fdt_add() argument 36 f->wrapper.data = (void *)fdt; in __kho_debugfs_fdt_add() 37 f->wrapper.size = fdt_totalsize(fdt); in __kho_debugfs_fdt_add() 52 const void *fdt, bool root) in kho_debugfs_fdt_add() argument 61 return __kho_debugfs_fdt_add(&dbg->fdt_list, dir, name, fdt); in kho_debugfs_fdt_add() 64 void kho_debugfs_fdt_remove(struct kho_debugfs *dbg, void *fdt) in kho_debugfs_fdt_remove() argument 69 if (ff->wrapper.data == fdt) { in kho_debugfs_fdt_remove() 114 __init void kho_in_debugfs_init(struct kho_debugfs *dbg, const void *fdt) in kho_in_debugfs_init() argument 133 err = __kho_debugfs_fdt_add(&dbg->fdt_list, dir, "fdt", fdt); in kho_in_debugfs_init() 137 fdt_for_each_subnode(child, fdt, 0) { in kho_in_debugfs_init() [all …]
|
| H A D | kexec_handover_internal.h | 30 void kho_in_debugfs_init(struct kho_debugfs *dbg, const void *fdt); 33 const void *fdt, bool root); 34 void kho_debugfs_fdt_remove(struct kho_debugfs *dbg, void *fdt); 38 const void *fdt) { } in kho_in_debugfs_init() argument 41 const void *fdt, bool root) { return 0; } in kho_debugfs_fdt_add() argument 43 void *fdt) { } in kho_debugfs_fdt_remove() argument
|
| /linux/arch/riscv/kernel/ |
| H A D | machine_kexec.c | 34 struct fdt_header fdt = {0}; in machine_kexec_prepare() local 41 if (image->segment[i].memsz <= sizeof(fdt)) in machine_kexec_prepare() 45 memcpy(&fdt, image->segment[i].buf, sizeof(fdt)); in machine_kexec_prepare() 46 else if (copy_from_user(&fdt, image->segment[i].buf, sizeof(fdt))) in machine_kexec_prepare() 49 if (fdt_check_header(&fdt)) in machine_kexec_prepare()
|