qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Fwd: [Qemu-devel] Interrupt request info


From: Alessandro Corradi
Subject: Fwd: [Qemu-devel] Interrupt request info
Date: Mon, 6 Nov 2006 15:39:09 +0100



---------- Forwarded message ----------
From: Alessandro Corradi <address@hidden>
Date: 4-nov-2006 17.08
Subject: Re: [Qemu-devel] Interrupt request info
To: address@hidden

Thank you very much for the answer,
so the only think to do to raise correctly an interrupt (I think) is only to raise it when a read funciton is completed (in case of my simple memory) because it will alarm the process in waiting status to read the value in the register.

the workaround of a read operation of a cell of this memory is:
1)write address of the cell that I want to read in the address register,
2)send the execution request to get the value of the cell indicated by the address reg (write on the command register the read opcode),
3)wait for control register response untill read operation is executed.
4)read the data register.

so I think that interrupt request must be between point 3 and 4.
Do you agree with my consideration?

I hope that writed something understandable :)

Thanks

Ale


2006/11/2, Paul Brook <address@hidden>:
On Wednesday 01 November 2006 23:25, Roger Lathrop wrote:
> Alessandro,
>
> All you should need to do to raise an IRQ in your code is:
> pic_set_irq(s->irq,1);
>
> When the irq is serviced (in one of your ioport traps, I would assume),
> knock the irq down:
> pic_set_irq(s->irq,0);

No. You should use pic_set_irq_new. Otherwise your code will break on machines
with multiple interrupt controllers.

Paul


_______________________________________________
Qemu-devel mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/qemu-devel


reply via email to

[Prev in Thread] Current Thread [Next in Thread]