summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorGrant Likely <grant.likely@linaro.org>2013-09-15 16:39:11 +0100
committerShawn Guo <shawn.guo@freescale.com>2014-05-16 16:19:12 +0800
commitd6e82b145aec027e127aa36527ae98714dab38ef (patch)
tree31c19c56b0e9c49e6da4260a2ef2ded2c263768c /include/linux
parentefc5383516e7c4d9ddeebab3eb3601467d7eb8f8 (diff)
ENGR00313685-2 of/irq: Replace of_irq with of_phandle_args
commit 530210c7814e83564c7ca7bca8192515042c0b63 upstream. struct of_irq and struct of_phandle_args are exactly the same structure. This patch makes the kernel use of_phandle_args everywhere. This in itself isn't a big deal, but it makes some follow-on patches simpler. Signed-off-by: Grant Likely <grant.likely@linaro.org> Acked-by: Michal Simek <monstr@monstr.eu> Acked-by: Tony Lindgren <tony@atomide.com> Cc: Russell King <linux@arm.linux.org.uk> Cc: Ralf Baechle <ralf@linux-mips.org> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Shawn Guo <shawn.guo@freescale.com> Conflicts: arch/arm/mach-integrator/pci_v3.c arch/mips/pci/pci-rt3883.c include/linux/of_irq.h
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/of_irq.h25
-rw-r--r--include/linux/of_pci.h4
2 files changed, 6 insertions, 23 deletions
diff --git a/include/linux/of_irq.h b/include/linux/of_irq.h
index 2bb2d622ad12..ed76e3d15dd9 100644
--- a/include/linux/of_irq.h
+++ b/include/linux/of_irq.h
@@ -2,7 +2,6 @@
#define __OF_IRQ_H
#if defined(CONFIG_OF)
-struct of_irq;
#include <linux/types.h>
#include <linux/errno.h>
#include <linux/irq.h>
@@ -18,22 +17,6 @@ struct of_irq;
extern unsigned int irq_of_parse_and_map(struct device_node *node, int index);
#if defined(CONFIG_OF_IRQ)
-/**
- * of_irq - container for device_node/irq_specifier pair for an irq controller
- * @controller: pointer to interrupt controller device tree node
- * @size: size of interrupt specifier
- * @specifier: array of cells @size long specifing the specific interrupt
- *
- * This structure is returned when an interrupt is mapped. The controller
- * field needs to be put() after use
- */
-#define OF_MAX_IRQ_SPEC 4 /* We handle specifiers of at most 4 cells */
-struct of_irq {
- struct device_node *controller; /* Interrupt controller node */
- u32 size; /* Specifier size */
- u32 specifier[OF_MAX_IRQ_SPEC]; /* Specifier copy */
-};
-
typedef int (*of_irq_init_cb_t)(struct device_node *, struct device_node *);
/*
@@ -46,12 +29,12 @@ typedef int (*of_irq_init_cb_t)(struct device_node *, struct device_node *);
extern unsigned int of_irq_workarounds;
extern struct device_node *of_irq_dflt_pic;
extern int of_irq_parse_oldworld(struct device_node *device, int index,
- struct of_irq *out_irq);
+ struct of_phandle_args *out_irq);
#else /* CONFIG_PPC32 && CONFIG_PPC_PMAC */
#define of_irq_workarounds (0)
#define of_irq_dflt_pic (NULL)
static inline int of_irq_parse_oldworld(struct device_node *device, int index,
- struct of_irq *out_irq)
+ struct of_phandle_args *out_irq)
{
return -EINVAL;
}
@@ -60,9 +43,9 @@ static inline int of_irq_parse_oldworld(struct device_node *device, int index,
extern int of_irq_parse_raw(struct device_node *parent, const __be32 *intspec,
u32 ointsize, const __be32 *addr,
- struct of_irq *out_irq);
+ struct of_phandle_args *out_irq);
extern int of_irq_parse_one(struct device_node *device, int index,
- struct of_irq *out_irq);
+ struct of_phandle_args *out_irq);
extern unsigned int irq_create_of_mapping(struct device_node *controller,
const u32 *intspec,
unsigned int intsize);
diff --git a/include/linux/of_pci.h b/include/linux/of_pci.h
index 839ba20808fe..f297237349e8 100644
--- a/include/linux/of_pci.h
+++ b/include/linux/of_pci.h
@@ -5,8 +5,8 @@
#include <linux/msi.h>
struct pci_dev;
-struct of_irq;
-int of_irq_parse_pci(const struct pci_dev *pdev, struct of_irq *out_irq);
+struct of_phandle_args;
+int of_irq_parse_pci(const struct pci_dev *pdev, struct of_phandle_args *out_irq);
struct device_node;
struct device_node *of_pci_find_child_device(struct device_node *parent,