[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [Bug 960515] [NEW] CortexM, NVIC not reseted if qemu_system
From: |
Oleksiy Bondarenko |
Subject: |
[Qemu-devel] [Bug 960515] [NEW] CortexM, NVIC not reseted if qemu_system_reset_request() called |
Date: |
Tue, 20 Mar 2012 19:03:36 -0000 |
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 = opaque;
s->systick.control = 0;
s->systick.reload = 0;
s->systick.tick = 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 = opaque;
s->systick.control = 0;
s->systick.reload = 0;
s->systick.tick = 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