[PATCH 8/9] x86: of: irq additions to make drivers/of/* build on x86
Stephen Neuendorffer
stephen.neuendorffer at xilinx.com
Tue Aug 31 01:58:52 EST 2010
> -----Original Message-----
> From: Andres Salomon [mailto:dilinger at queued.net]
> Sent: Sunday, August 29, 2010 9:06 PM
> To: devicetree-discuss at lists.ozlabs.org
> Cc: sparclinux at vger.kernel.org; x86 at kernel.org; tglx at linutronix.de;
mingo at redhat.com; hpa at zytor.com;
> cjb at laptop.org; Mitch Bradley; pgf at laptop.org;
linux-kernel at vger.kernel.org; davem at davemloft.net;
> grant.likely at secretlab.ca; Stephen Neuendorffer
> Subject: [PATCH 8/9] x86: of: irq additions to make drivers/of/* build
on x86
>
>
> This functionality overlaps with patches previously submitted
> by Stephen Neuendorffer. I don't care whose eventually get applied,
> so long as drivers/of/* becomes buildable on x86.
>
> Signed-off-by: Andres Salomon <dilinger at queued.net>
Agreed..
Signed-off-by: Stephen Neuendorffer <stephen.neuendorffer at xilinx.com>
> ---
> arch/x86/include/asm/irq.h | 5 +++++
> arch/x86/kernel/irq.c | 8 ++++++++
> include/linux/of_irq.h | 1 +
> 3 files changed, 14 insertions(+), 0 deletions(-)
>
> diff --git a/arch/x86/include/asm/irq.h b/arch/x86/include/asm/irq.h
> index 5458380..0a656b9 100644
> --- a/arch/x86/include/asm/irq.h
> +++ b/arch/x86/include/asm/irq.h
> @@ -10,6 +10,11 @@
> #include <asm/apicdef.h>
> #include <asm/irq_vectors.h>
>
> +#define NO_IRQ 0
> +
> +/* Even though we don't support this, supply it to appease OF */
> +static inline void irq_dispose_mapping(unsigned int virq) { }
> +
> static inline int irq_canonicalize(int irq)
> {
> return ((irq == 2) ? 9 : irq);
> diff --git a/arch/x86/kernel/irq.c b/arch/x86/kernel/irq.c
> index 91fd0c7..d53f639 100644
> --- a/arch/x86/kernel/irq.c
> +++ b/arch/x86/kernel/irq.c
> @@ -7,6 +7,7 @@
> #include <linux/seq_file.h>
> #include <linux/smp.h>
> #include <linux/ftrace.h>
> +#include <linux/of.h>
>
> #include <asm/apic.h>
> #include <asm/io_apic.h>
> @@ -275,6 +276,13 @@ void smp_x86_platform_ipi(struct pt_regs *regs)
>
> EXPORT_SYMBOL_GPL(vector_used_by_percpu_irq);
>
> +unsigned int irq_create_of_mapping(struct device_node *controller,
> + const u32 *intspec, unsigned int intsize)
> +{
> + return intspec[0] + 1;
> +}
> +EXPORT_SYMBOL_GPL(irq_create_of_mapping);
> +
> #ifdef CONFIG_HOTPLUG_CPU
> /* A cpu has been removed from cpu_online_mask. Reset irq
affinities. */
> void fixup_irqs(void)
> diff --git a/include/linux/of_irq.h b/include/linux/of_irq.h
> index 5929781..05ad27b 100644
> --- a/include/linux/of_irq.h
> +++ b/include/linux/of_irq.h
> @@ -5,6 +5,7 @@
> struct of_irq;
> #include <linux/types.h>
> #include <linux/errno.h>
> +#include <linux/irq.h>
> #include <linux/ioport.h>
> #include <linux/of.h>
>
> --
> 1.5.6.5
>
This email and any attachments are intended for the sole use of the named recipient(s) and contain(s) confidential information that may be proprietary, privileged or copyrighted under applicable law. If you are not the intended recipient, do not read, copy, or forward this email message or any attachments. Delete this email message and any attachments immediately.
More information about the devicetree-discuss
mailing list