 
	
| [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 |