From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1GjHX3-0002Qo-9u for qemu-devel@nongnu.org; Sun, 12 Nov 2006 10:46:05 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1GjHX1-0002PF-JG for qemu-devel@nongnu.org; Sun, 12 Nov 2006 10:46:04 -0500 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1GjHX1-0002PB-9E for qemu-devel@nongnu.org; Sun, 12 Nov 2006 10:46:03 -0500 Received: from [64.233.162.201] (helo=nz-out-0102.google.com) by monty-python.gnu.org with esmtp (Exim 4.52) id 1GjHX1-000441-96 for qemu-devel@nongnu.org; Sun, 12 Nov 2006 10:46:03 -0500 Received: by nz-out-0102.google.com with SMTP id i11so910857nzi for ; Sun, 12 Nov 2006 07:46:02 -0800 (PST) Message-ID: Date: Sun, 12 Nov 2006 16:46:00 +0100 From: "Alessandro Corradi" Subject: Re: [Qemu-devel] Interrupt request info In-Reply-To: <200611012331.38312.paul@codesourcery.com> MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_Part_57131_14651230.1163346360150" References: <200611011205.1gFjwA1qs3Nl3pX2@cave.mail.atl.earthlink.net> <002e01c6fe0d$0d434460$7e00a8c0@DELL3G> <200611012331.38312.paul@codesourcery.com> Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org ------=_Part_57131_14651230.1163346360150 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline I tried with both pic_set_irq and pic_set_irq_new but nothing happen (the irq number is 13 and I verified with info irq in qemu monitor). I tried also to hack i8259.c and the function is not called (I think). What the first parameter of pic_set_irq_new is referred to? Another question: why a new virtual device works anyway without interrupt mechanism? isn't it essential? Thanks Ale 2006/11/2, Paul Brook : > > 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 > Qemu-devel@nongnu.org > http://lists.nongnu.org/mailman/listinfo/qemu-devel > ------=_Part_57131_14651230.1163346360150 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline I tried with both pic_set_irq and pic_set_irq_new but nothing happen (the irq number is 13 and I verified with info irq in qemu monitor).
I tried also to hack i8259.c and the function is not called (I think).
What the first parameter of pic_set_irq_new is referred to?

Another question: why a new virtual device works anyway without interrupt mechanism? isn't it essential?

Thanks

Ale

2006/11/2, Paul Brook <paul@codesourcery.com>:
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
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel

------=_Part_57131_14651230.1163346360150--