From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:43933) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SA4SK-0005z7-Ep for qemu-devel@nongnu.org; Tue, 20 Mar 2012 15:10:58 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SA4SC-0000FP-3S for qemu-devel@nongnu.org; Tue, 20 Mar 2012 15:10:52 -0400 Received: from indium.canonical.com ([91.189.90.7]:34538) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SA4SB-0000F9-Ri for qemu-devel@nongnu.org; Tue, 20 Mar 2012 15:10:43 -0400 Received: from loganberry.canonical.com ([91.189.90.37]) by indium.canonical.com with esmtp (Exim 4.71 #1 (Debian)) id 1SA4SA-0004fz-Bq for ; Tue, 20 Mar 2012 19:10:42 +0000 Received: from loganberry.canonical.com (localhost [127.0.0.1]) by loganberry.canonical.com (Postfix) with ESMTP id 581B22E800B for ; Tue, 20 Mar 2012 19:10:42 +0000 (UTC) MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Date: Tue, 20 Mar 2012 19:03:36 -0000 From: Oleksiy Bondarenko <960515@bugs.launchpad.net> Sender: bounces@canonical.com References: <20120320190336.16065.12428.malonedeb@gac.canonical.com> Message-Id: <20120320190336.16065.12428.malonedeb@gac.canonical.com> Errors-To: bounces@canonical.com Subject: [Qemu-devel] [Bug 960515] [NEW] CortexM, NVIC not reseted if qemu_system_reset_request() called Reply-To: Bug 960515 <960515@bugs.launchpad.net> List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Public bug reported: qemu 0.15.1 Interrupts does not work anymore if system reseted from interrupt. There is no reset function registered for armv7m_nvic, and as it is part of the core there is also no any reset for gic/nvic in cpu_reset() for arm. possible solution is to add reset function to armv7_nvic.c static void nvic_reset(void *opaque) { nvic_state* s =3D opaque; s->systick.control =3D 0; s->systick.reload =3D 0; s->systick.tick =3D 0; qemu_del_timer(s->systick.timer); gic_reset(&s->gic); } and register it in armv7m_nvic_init ** Affects: qemu Importance: Undecided Status: New ** Tags: arm cortexm -- = You received this bug notification because you are a member of qemu- devel-ml, which is subscribed to QEMU. https://bugs.launchpad.net/bugs/960515 Title: CortexM, NVIC not reseted if qemu_system_reset_request() called Status in QEMU: New Bug description: qemu 0.15.1 Interrupts does not work anymore if system reseted from interrupt. There is no reset function registered for armv7m_nvic, and as it is part of the core there is also no any reset for gic/nvic in cpu_reset() for arm. possible solution is to add reset function to armv7_nvic.c static void nvic_reset(void *opaque) { nvic_state* s =3D opaque; s->systick.control =3D 0; s->systick.reload =3D 0; s->systick.tick =3D 0; qemu_del_timer(s->systick.timer); gic_reset(&s->gic); } and register it in armv7m_nvic_init To manage notifications about this bug go to: https://bugs.launchpad.net/qemu/+bug/960515/+subscriptions