[PATCH v5 08/27] irq_domain: Move irq_domain code from powerpc to kernel/irq
Grant Likely
grant.likely at secretlab.ca
Thu Feb 16 08:23:50 EST 2012
On Thu, Feb 16, 2012 at 2:09 AM, Grant Likely <grant.likely at secretlab.ca> wrote:
> This patch only moves the code. It doesn't make any changes, and the
> code is still only compiled for powerpc. Follow-on patches will generalize
> the code for other architectures.
>
> Signed-off-by: Grant Likely <grant.likely at secretlab.ca>
> Cc: Benjamin Herrenschmidt <benh at kernel.crashing.org>
> Cc: Thomas Gleixner <tglx at linutronix.de>
> Cc: Milton Miller <miltonm at bga.com>
> Tested-by: Olof Johansson <olof at lixom.net>
> ---
> +unsigned int irq_find_mapping(struct irq_domain *host,
> + irq_hw_number_t hwirq)
> +{
> + unsigned int i;
> + unsigned int hint = hwirq % irq_virq_count;
> +
> + /* Look for default host if nececssary */
> + if (host == NULL)
> + host = irq_default_host;
> + if (host == NULL)
> + return NO_IRQ;
> +
> + /* legacy -> bail early */
> + if (host->revmap_type == IRQ_DOMAIN_MAP_LEGACY)
> + return hwirq;
> +
> + /* Slow path does a linear search of the map */
> + if (hint == 0)
> + hint = 1;
> + i = hint;
> + do {
> + struct irq_data *data = irq_get_irq_data(i);
> + if (data && (data->domain == host) && (data->hwirq == hwirq))
> + return i;
> + i++;
> + if (i >= irq_virq_count)
> + i = 1
Typo on this line; missing semicolon. Fixed in my tree now.
g.
More information about the linux-arm-kernel
mailing list