In response to Chris Wulff series which add FDT driver machine generation for microblaze, heres the current version of the system maintained out of tree at Xilinx.
Looking to collaborate with Chris (or anyone else out there) on how we can converge our implementations. Major outstanding issues: -The Flash and Serial stuff is a bit of a hack as they arent there yet with QOM. I think Anthony has some stuff in a series to fix up serial which clear this series up a little bit. Ditto for PFlash, with outstanding QOM issues. -Need to rework the API to handle nodepaths a little cleaner. Peter A. G. Crosthwaite (10): device_tree: allow offsets for cell properties device_tree: return Error* from prop getters device_tree: allow property getters to inherit device_tree: get_prop(): memdup returned properties qemu-coroutine: Add simple work queue support device_tree: Extended interface for fdt_generic fdt_generic: First revision pflash_cfi01: Added fdt generic platform support microblaze_generic_fdt: first revision serial: added fdt generic platform support default-configs/microblaze-softmmu.mak | 1 + default-configs/microblazeel-softmmu.mak | 1 + device_tree.c | 199 +++++++++++++- device_tree.h | 38 +++- hw/arm_boot.c | 10 +- hw/fdt_generic.c | 215 +++++++++++++++ hw/fdt_generic.h | 92 +++++++ hw/fdt_generic_devices.c | 80 ++++++ hw/fdt_generic_devices.h | 8 + hw/fdt_generic_util.c | 438 ++++++++++++++++++++++++++++++ hw/fdt_generic_util.h | 36 +++ hw/microblaze/Makefile.objs | 5 + hw/microblaze_generic_fdt.c | 378 ++++++++++++++++++++++++++ qemu-coroutine-lock.c | 13 + qemu-coroutine.h | 9 + 15 files changed, 1507 insertions(+), 16 deletions(-) create mode 100644 hw/fdt_generic.c create mode 100644 hw/fdt_generic.h create mode 100644 hw/fdt_generic_devices.c create mode 100644 hw/fdt_generic_devices.h create mode 100644 hw/fdt_generic_util.c create mode 100644 hw/fdt_generic_util.h create mode 100644 hw/microblaze_generic_fdt.c