v3 (rework v2's crap): - SerialState::irq is supposed to be a 'protected' field, do not set it from 'outside' of the object, expose it as QDev GPIO. - Manually Reset SerialState from parents, register global reset handler for SERIAL_MM (not on qbus)
v2: - Addressed Paolo's comments from v1 (except &error_abort). Note, this fixes a bug where serial_realize() was calling serial_reset() -> qemu_irq_lower() while the IRQ was not yet created. Philippe Mathieu-Daudé (2): hw/char/serial: Expose SerialState::irq as QDev GPIO hw/char/serial: Convert to three-phase reset hw/char/serial-isa.c | 12 +++++++++++- hw/char/serial-mm.c | 11 +++++++++++ hw/char/serial-pci-multi.c | 21 ++++++++++++++++++++- hw/char/serial-pci.c | 14 +++++++++++++- hw/char/serial.c | 12 ++++++------ 5 files changed, 61 insertions(+), 9 deletions(-) -- 2.47.1