This series changes how the fdt for VOF is generated in pegasos2 by moving the static parts to a dtb and only generate the changing parts such as memory size and PCI devices programmatically. This simplifies the code and allows simply adding emulation of Pegasos I which has a different north bridge and slightly different memory map but otherwise very similar and can be emulated by reusing parts from the amigaone machine. The machine was tested with a Pegasos I ROM image and MorphOS.
The first VOF patch (submitted separetely before, the reviewed v3 is included here) fixes handling the name property in VOF that cannot be represented in a dts as that always takes the path as the name and cannot accept an explicit name property but we need the name property to appear when guest queries properties which previously was worked around by adding it to every node. The series also adds an extended DEFINE_MACHINE macro that is later used for more easily define the abstract machine type and hide most of the QOM boiler plate. Regards, BALATON Zoltan Link to previous version: https://patchew.org/QEMU/[email protected]/ v3: - rebase on master v2: - rebase on master - added some R-b tags from Philippe - move first patch later (was first to allow merging separately) - clarify blurb above BALATON Zoltan (13): ppc/vof: Make nextprop behave more like Open Firmware hw/ppc/pegasos2: Remove explicit name properties from device tree hw/ppc/pegasos2: Change device tree generation hw/ppc/pegasos2: Remove fdt pointer from machine state hw/ppc/pegasos2: Rename mv field in machine state hw/ppc/pegasos2: Add south bridge pointer in the machine state hw/ppc/pegasos2: Move PCI IRQ routing setup to a function hw/ppc/pegasos2: Move hardware specific parts out of machine reset hw/ppc/pegasos2: Introduce abstract superclass hw/ppc/pegasos2: Add bus frequency to machine state hw/boards: Extend DEFINE_MACHINE macro to cover more use cases hw/ppc/pegasos2: Add Pegasos I emulation hw/ppc/pegasos2: Add VOF support for pegasos1 MAINTAINERS | 1 + hw/ppc/pegasos2.c | 770 +++++++++++++++++++-------------------- hw/ppc/vof.c | 50 ++- include/hw/boards.h | 16 +- pc-bios/dtb/meson.build | 2 + pc-bios/dtb/pegasos1.dtb | Bin 0 -> 857 bytes pc-bios/dtb/pegasos1.dts | 125 +++++++ pc-bios/dtb/pegasos2.dtb | Bin 0 -> 1701 bytes pc-bios/dtb/pegasos2.dts | 167 +++++++++ 9 files changed, 718 insertions(+), 413 deletions(-) create mode 100644 pc-bios/dtb/pegasos1.dtb create mode 100644 pc-bios/dtb/pegasos1.dts create mode 100644 pc-bios/dtb/pegasos2.dtb create mode 100644 pc-bios/dtb/pegasos2.dts -- 2.41.3
