On Mon, Jul 22, 2024 at 10:21:30PM +0000, Bernhard Beschow wrote: > > > Am 20. Juli 2024 18:38:42 UTC schrieb "Michael S. Tsirkin" <m...@redhat.com>: > >On Thu, Jul 04, 2024 at 10:58:51PM +0200, Bernhard Beschow wrote: > >> This series first turns vt82c686's "INTR" pin into a named GPIO for better > >> comprehensibility. It then continues fixing qemu_irq memory leaks in > >> vt82c686 > >> and piix4 by connecting out IRQs of the south bridges before they get > >> realized. > >> This approach is already used in the pc machines after it had been > >> discussed at > >> KVM forum `23. > >> > >> Observe that out IRQs are callbacks such as an INTR IRQ handler in a CPU > >> which a > >> south bridge wants to trigger. If, as an implementation detail, the south > >> bridge > >> wants to pass this callback to a child device, such as the PIC, then this > >> callback must be known to the south bridge before it gets realized. > >> Otherwise > >> board code had to wire the PIC device itself, breaking encapsulation. This > >> means > >> that qdev_connect_gpio_out*() has to be called before realize() which this > >> series implements. Another way to look at it is that callbacks apparently > >> are > >> resouces such as memory regions which are also populated before realize(). > >> > >> Please check if above paragraph makes sense. > >> > >> Best regards, > >> Bernhard > > > > > >Bernhard, do you intend to resolve Zoltan's comments on this > >patchset? > > Hi Michael, > > I was hoping for some more comments on the last two commits. These resolve > various issues in one go, some of which have been addressed in the past. > Since this is apparently a new style to handle out-GPIOs, I'd like to get an > OK from the community. > > As Zoltan writes the ideal solution might be to qdev'ify the PIC. This is a > bigger task which is more than I intended to do in this series. > > Best regards, > Bernhard
ATM I'm just looking at whether we can fix any bugs for the coming release. > > > >Thanks! > > > > > >> See also: > >> * > >> https://lore.kernel.org/qemu-devel/0FFB5FD2-08CE-4CEC-9001-E7AC24407A44@gmail. > >> com/ > >> * "Remove intermediate IRQ forwarder" patches in > >> https://lore.kernel.org/qemu-devel/20230210163744.32182-1-phi...@linaro.org/ > >> > >> Testing done: > >> * Boot amigaone machine into Linux > >> * Boot pegasos2 machine into MorphOS > >> * Start fuloong2e machine and check that it doesn't abort > >> * Boot malta machine with https://people.debian.org/~gio/dqib/ > >> > >> Bernhard Beschow (3): > >> hw/isa/vt82c686: Turn "intr" irq into a named gpio > >> hw/isa/vt82c686: Resolve intermediate IRQ forwarder > >> hw/isa/piix: Resolve intermediate IRQ forwarder > >> > >> hw/isa/piix.c | 13 ++----------- > >> hw/isa/vt82c686.c | 12 ++---------- > >> hw/mips/fuloong2e.c | 2 +- > >> hw/mips/malta.c | 4 +--- > >> hw/ppc/amigaone.c | 8 ++++---- > >> hw/ppc/pegasos2.c | 4 ++-- > >> 6 files changed, 12 insertions(+), 31 deletions(-) > >> > >> -- > >> 2.45.2 > >> > >