* [Qemu-devel] [Bug 960515] [NEW] CortexM, NVIC not reseted if qemu_system_reset_request() called
@ 2012-03-20 19:03 Oleksiy Bondarenko
2012-07-10 15:04 ` [Qemu-devel] [Bug 960515] " Peter Maydell
0 siblings, 1 reply; 2+ messages in thread
From: Oleksiy Bondarenko @ 2012-03-20 19:03 UTC (permalink / raw)
To: qemu-devel
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
^ permalink raw reply [flat|nested] 2+ messages in thread
* [Qemu-devel] [Bug 960515] Re: CortexM, NVIC not reseted if qemu_system_reset_request() called
2012-03-20 19:03 [Qemu-devel] [Bug 960515] [NEW] CortexM, NVIC not reseted if qemu_system_reset_request() called Oleksiy Bondarenko
@ 2012-07-10 15:04 ` Peter Maydell
0 siblings, 0 replies; 2+ messages in thread
From: Peter Maydell @ 2012-07-10 15:04 UTC (permalink / raw)
To: qemu-devel
I added a reset function for the NVIC/systick as part of the GIC
refactoring work I did recently. These changes should be in QEMU 1.1.
** Changed in: qemu
Status: New => Fix Released
--
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:
Fix Released
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
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2012-07-10 15:11 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-03-20 19:03 [Qemu-devel] [Bug 960515] [NEW] CortexM, NVIC not reseted if qemu_system_reset_request() called Oleksiy Bondarenko
2012-07-10 15:04 ` [Qemu-devel] [Bug 960515] " Peter Maydell
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.