Il 19/02/2013 23:17, Anthony Liguori ha scritto:
>>> >> > if (val & 4) {
>>> >> > + if (val & 2)
>>> >> > + qemu_irq_pulse(d->reset_out);
>>> >> > qemu_system_reset_request();
>> >>
>> >>
>> >> This is a bit strange to me.
> >
> > The reset_out "IRQ" isn't actually what triggers the I440FX/PAM reset.
>
> Right, this is what's strange to me. There's no hardware analog AFAICT
> so I'm not sure why we're exposing it as a qemu_irq other than we want
> to jump through a function pointer invocation instead of making a
> straight funciton call :-)
True, OTOH I agreed with David's explanation that the hard reset could
happen too early.
IOW, doing the irq this way is a consequence of having
qemu_system_reset_request() instead of qemu_system_reset().
Paolo