diff options
author | luka <luka@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2014-02-11 02:07:44 +0000 |
---|---|---|
committer | luka <luka@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2014-02-11 02:07:44 +0000 |
commit | d88fd07c630bdfb0a8a4a94606d521dfeead83f4 (patch) | |
tree | 8b031a68c4ff6c7457830843adc41d49f0ab2d5f /target/linux/mvebu/patches-3.10/0178-of-clean-up-ifdefs-in-of_irq.h.patch | |
parent | 79312bc73a529d239ae64957876cc28c87f4b64f (diff) |
mvebu: backport mainline patches from kernel 3.13
This is a backport of the patches accepted to the Linux mainline related to
mvebu SoC (Armada XP and Armada 370) between Linux v3.12, and Linux v3.13.
This work mainly covers:
* Finishes work for sharing the pxa nand driver(drivers/mtd/nand/pxa3xx_nand.c)
between the PXA family, and the Armada family.
* timer initialization update, and access function for the Armada family.
* Generic IRQ handling backporting.
* Some bug fixes.
Signed-off-by: Seif Mazareeb <seif.mazareeb@gmail.com>
CC: Luka Perkov <luka@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@39566 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/mvebu/patches-3.10/0178-of-clean-up-ifdefs-in-of_irq.h.patch')
-rw-r--r-- | target/linux/mvebu/patches-3.10/0178-of-clean-up-ifdefs-in-of_irq.h.patch | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/target/linux/mvebu/patches-3.10/0178-of-clean-up-ifdefs-in-of_irq.h.patch b/target/linux/mvebu/patches-3.10/0178-of-clean-up-ifdefs-in-of_irq.h.patch new file mode 100644 index 0000000000..57ea574557 --- /dev/null +++ b/target/linux/mvebu/patches-3.10/0178-of-clean-up-ifdefs-in-of_irq.h.patch @@ -0,0 +1,68 @@ +From 704f3796c741df558d624078c5094439c0b65d09 Mon Sep 17 00:00:00 2001 +From: Rob Herring <rob.herring@calxeda.com> +Date: Thu, 19 Dec 2013 09:30:49 -0300 +Subject: [PATCH 178/203] of: clean-up ifdefs in of_irq.h + +Much of of_irq.h is needlessly ifdef'ed. Clean this up and minimize the +amount ifdef'ed code. This fixes some build warnings when CONFIG_OF +is not enabled (seen on i386 and x86_64): + +include/linux/of_irq.h:82:7: warning: 'struct device_node' declared inside parameter list [enabled by default] +include/linux/of_irq.h:82:7: warning: its scope is only this definition or declaration, which is probably not what you want [enabled by default] +include/linux/of_irq.h:87:47: warning: 'struct device_node' declared inside parameter list [enabled by default] + +Compile tested on i386, sparc and arm. + +Reported-by: Randy Dunlap <rdunlap@infradead.org> +Cc: Grant Likely <grant.likely@linaro.org> +Signed-off-by: Rob Herring <rob.herring@calxeda.com> +--- + include/linux/of_irq.h | 20 ++++++++------------ + 1 file changed, 8 insertions(+), 12 deletions(-) + +--- a/include/linux/of_irq.h ++++ b/include/linux/of_irq.h +@@ -1,8 +1,6 @@ + #ifndef __OF_IRQ_H + #define __OF_IRQ_H + +-#if defined(CONFIG_OF) +-struct of_irq; + #include <linux/types.h> + #include <linux/errno.h> + #include <linux/irq.h> +@@ -10,14 +8,6 @@ struct of_irq; + #include <linux/ioport.h> + #include <linux/of.h> + +-/* +- * irq_of_parse_and_map() is used by all OF enabled platforms; but SPARC +- * implements it differently. However, the prototype is the same for all, +- * so declare it here regardless of the CONFIG_OF_IRQ setting. +- */ +-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 +@@ -71,11 +61,17 @@ extern int of_irq_to_resource(struct dev + extern int of_irq_count(struct device_node *dev); + extern int of_irq_to_resource_table(struct device_node *dev, + struct resource *res, int nr_irqs); +-extern struct device_node *of_irq_find_parent(struct device_node *child); + + extern void of_irq_init(const struct of_device_id *matches); + +-#endif /* CONFIG_OF_IRQ */ ++#if defined(CONFIG_OF) ++/* ++ * irq_of_parse_and_map() is used by all OF enabled platforms; but SPARC ++ * implements it differently. However, the prototype is the same for all, ++ * so declare it here regardless of the CONFIG_OF_IRQ setting. ++ */ ++extern unsigned int irq_of_parse_and_map(struct device_node *node, int index); ++extern struct device_node *of_irq_find_parent(struct device_node *child); + + #else /* !CONFIG_OF */ + static inline unsigned int irq_of_parse_and_map(struct device_node *dev, |