Re: [Qemu-devel] [PATCH 10/23] hw/intc/arm_gicv3: Implement functions to identify next pending irq

2016-05-19 Thread Peter Maydell
On 19 May 2016 at 13:59, Shannon Zhao wrote: > > > On 2016/5/10 1:29, Peter Maydell wrote: >> +uint32_t pend, grpmask; >> +uint32_t pending = *gic_bmp_ptr32(s->pending, irq - GIC_INTERNAL); >> +uint32_t edge_trigger = *gic_bmp_ptr32(s->edge_trigger, irq - >> GIC_INTERNAL); >> +uin

Re: [Qemu-devel] [PATCH 10/23] hw/intc/arm_gicv3: Implement functions to identify next pending irq

2016-05-19 Thread Shannon Zhao
On 2016/5/10 1:29, Peter Maydell wrote: > +uint32_t pend, grpmask; > +uint32_t pending = *gic_bmp_ptr32(s->pending, irq - GIC_INTERNAL); > +uint32_t edge_trigger = *gic_bmp_ptr32(s->edge_trigger, irq - > GIC_INTERNAL); > +uint32_t level = *gic_bmp_ptr32(s->level, irq - GIC_INTERN

[Qemu-devel] [PATCH 10/23] hw/intc/arm_gicv3: Implement functions to identify next pending irq

2016-05-09 Thread Peter Maydell
Implement the GICv3 logic to recalculate the highest priority pending interrupt for each CPU after some part of the GIC state has changed. We avoid unnecessary full recalculation where possible. Signed-off-by: Peter Maydell --- hw/intc/arm_gicv3.c| 290 +++