From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:39099) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aqgqj-0003FY-FZ for qemu-devel@nongnu.org; Thu, 14 Apr 2016 08:58:22 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aqgqi-0004eM-Jo for qemu-devel@nongnu.org; Thu, 14 Apr 2016 08:58:21 -0400 Received: from mail-wm0-x233.google.com ([2a00:1450:400c:c09::233]:38342) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aqgqi-0004dj-DF for qemu-devel@nongnu.org; Thu, 14 Apr 2016 08:58:20 -0400 Received: by mail-wm0-x233.google.com with SMTP id u206so124439044wme.1 for ; Thu, 14 Apr 2016 05:58:19 -0700 (PDT) Received: from ?IPv6:2001:660:6101:403::1:6c? (laptop-ipv6-2001-660-6101-403-1-6c.labri.fr. [2001:660:6101:403::1:6c]) by smtp.gmail.com with ESMTPSA id jh2sm34970921wjb.39.2016.04.14.05.58.18 for (version=TLSv1/SSLv3 cipher=OTHER); Thu, 14 Apr 2016 05:58:18 -0700 (PDT) From: Inti Gonzalez-Herrera Message-ID: <570F93E9.1050204@gmail.com> Date: Thu, 14 Apr 2016 14:58:17 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Subject: [Qemu-devel] IRQ number used by virtio-net-device in vexpress-a15 List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Hello, I am writing a simple OS that must access the network. The platform I'm using can be seen below: qemu-system-arm -redir tcp:5555::80 -m 256M -smp 1 -M vexpress-a15 -cpu cortex-a15 -netdev user,id=net0 -device virtio-net-device,netdev=net0 -kernel ~/work/src/simple-arm-os/bin/kernel.bin -nographic -serial /dev/tty I have some problems using virtio-net-device. In particular, th system is not receiving an interrupt when it transmits a package. However, I can see how the buffer descriptors are moved to the used ring. I was thinking that maybe the problem is related to the fact that I don't know what is the exact IRQ number. In other words, let's say that I have a function enable_irq(int, handler) that enables a given interrupt in the GIC. What is the number n that I should used as parameter in this platform? Right now, I'm using the value (40 + k), where k is the index of the specific transporter where the network device is attached (from 0 to 3). It is not working. I get that information from file hw/arm/vexpress.c, functions vexpress_common_init and vexpress_modify_dtb (this one is not executed) I am using qemu version 2.5.1 Thanks, Inti