I've been doing a bit of looking at riscv and dt creation, and was thinking the following two helper functions would be useful so implemented qemu_fdt_setprop_reg64() and qemu_fdt_setprop_strings() and then applied them to the hw/riscv/sifive_u.c machine.
I thought I should get a review in before I continued on looking at more possible helpers to make the dtb creation code leaner.