On Tue, Feb 11, 2020 at 11:32:14PM +0800, Zenghui Yu wrote: > On 2020/2/11 22:50, Zenghui Yu wrote: > > Hi Drew, > > > > On 2020/2/11 21:37, Andrew Jones wrote: > > > Let's bail out of the wait loop if we see the expected state > > > to save over six seconds of run time. Make sure we wait a bit > > > before reading the registers and double check again after, > > > though, to somewhat mitigate the chance of seeing the expected > > > state by accident. > > > > > > We also take this opportunity to push more IRQ state code to > > > the library. > > > > > > Signed-off-by: Andrew Jones <drjones@xxxxxxxxxx> > > > > [...] > > > > > + > > > +enum gic_irq_state gic_irq_state(int irq) > > > > This is a *generic* name while this function only deals with PPI. > > Maybe we can use something like gic_ppi_state() instead? Or you > > will have to take all interrupt types into account in a single > > function, which is not a easy job I think. > > Just to follow up, gic_irq_get_irqchip_state()/gic_peek_irq() [*] is > the Linux implementation of this for PPIs and SPIs. > > [*] linux/drivers/irqchip/irq-gic-v3.c > Thanks. I just skimmed that now and it looks like the diff I sent is pretty close. But, I do see a bug in my diff (missing '* 4' on the offset calculation). Thanks, drew _______________________________________________ kvmarm mailing list kvmarm@xxxxxxxxxxxxxxxxxxxxx https://lists.cs.columbia.edu/mailman/listinfo/kvmarm