summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnton Vorontsov <avorontsov@ru.mvista.com>2008-06-12 03:42:14 +0400
committerKumar Gala <galak@kernel.crashing.org>2008-06-26 01:49:09 -0500
commitd14b3dd6190af7ce4f88be68f8df828af6d44584 (patch)
tree510889655bcdeca927bffc5a22421e6b5d942b38
parent2308c954f55eae9f165a5a59bbdb0a0c586afe5a (diff)
powerpc/QE: use arch_initcall to probe QUICC Engine GPIOs
It was discussed that global arch_initcall() is preferred way to probe QE GPIOs, so let's use it. Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
-rw-r--r--arch/powerpc/sysdev/qe_lib/gpio.c5
-rw-r--r--include/asm-powerpc/qe.h1
2 files changed, 4 insertions, 2 deletions
diff --git a/arch/powerpc/sysdev/qe_lib/gpio.c b/arch/powerpc/sysdev/qe_lib/gpio.c
index c712e245dc4c..8e5a0bc36d0b 100644
--- a/arch/powerpc/sysdev/qe_lib/gpio.c
+++ b/arch/powerpc/sysdev/qe_lib/gpio.c
@@ -12,6 +12,7 @@
*/
#include <linux/kernel.h>
+#include <linux/init.h>
#include <linux/spinlock.h>
#include <linux/io.h>
#include <linux/of.h>
@@ -102,7 +103,7 @@ static int qe_gpio_dir_out(struct gpio_chip *gc, unsigned int gpio, int val)
return 0;
}
-void __init qe_add_gpiochips(void)
+static int __init qe_add_gpiochips(void)
{
struct device_node *np;
@@ -143,4 +144,6 @@ err:
kfree(qe_gc);
/* try others anyway */
}
+ return 0;
}
+arch_initcall(qe_add_gpiochips);
diff --git a/include/asm-powerpc/qe.h b/include/asm-powerpc/qe.h
index 1355e7267013..edee15d269ea 100644
--- a/include/asm-powerpc/qe.h
+++ b/include/asm-powerpc/qe.h
@@ -101,7 +101,6 @@ struct qe_pio_regs {
#endif
};
-extern void __init qe_add_gpiochips(void);
extern int par_io_init(struct device_node *np);
extern int par_io_of_config(struct device_node *np);
#define QE_PIO_DIR_IN 2