[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v6 1/6] xen/arm: IRQ: Store IRQ type in arch_irq_desc
On Thu, 2014-05-15 at 18:03 +0100, Julien Grall wrote: > On 05/15/2014 04:45 PM, Ian Campbell wrote: > >> +int irq_set_type(unsigned int spi, unsigned int type) > >> +{ > >> + unsigned long flags; > >> + struct irq_desc *desc = irq_to_desc(spi); > >> + int ret = -EBUSY; > >> + > >> + /* This function should not be used for other than SPIs */ > > > > Perhaps name the function irq_set_spi_type or something then? > > > >> + for_each_cpu( cpu, &cpu_online_map ) > >> + { > >> + desc = &per_cpu(local_irq_desc, cpu)[irq]; > >> + spin_lock_irqsave(&desc->lock, flags); > >> + desc->arch.type = type; > > > > Don't you need to write ICFGR on each CPU? > > This function will bail out if local_irqs_type[irq] == DT_IRQ_TYPE_INVALID. Did you mean != ? > This value means, the IRQ has not been configured and set up (see ASSERT > in configure which prevent it). > > The ICFGR will be configure when Xen set up an handler to this IRQ (see > setup_irq). OK. > >> +#define DT_IRQ_TYPE_INVALID 0x00000010 > > > > 0xffffffff perhaps? > > The value 0x010 will always return false for edge and level. This is not > the case for 0xffffffff because edge/level use different bit. OK. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |