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