aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/arch/arm/mach-s3c64xx/irq-pm.c
diff options
context:
space:
mode:
authorTomasz Figa <tomasz.figa@gmail.com>2013-08-26 02:37:34 +0900
committerKukjin Kim <kgene.kim@samsung.com>2013-09-17 06:48:27 +0900
commitc836c90e276ec1b1b4193bb6f0b5e6b11cc69f83 (patch)
tree7aba4732b5b76ba35c3bd8e96044154135e5f891 /arch/arm/mach-s3c64xx/irq-pm.c
parentirqchip: vic: Parse interrupt and resume masks from device tree (diff)
downloadwireguard-linux-c836c90e276ec1b1b4193bb6f0b5e6b11cc69f83.tar.xz
wireguard-linux-c836c90e276ec1b1b4193bb6f0b5e6b11cc69f83.zip
ARM: S3C64XX: Bypass legacy initialization when booting with DT
This patch allows bypassing most of legacy initialization when booting an S3C64xx-based board using device tree, by adding conditional checks for DT presence to initcalls which are no longer necessary when booting with DT.. Signed-off-by: Tomasz Figa <tomasz.figa@gmail.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Diffstat (limited to 'arch/arm/mach-s3c64xx/irq-pm.c')
-rw-r--r--arch/arm/mach-s3c64xx/irq-pm.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/arch/arm/mach-s3c64xx/irq-pm.c b/arch/arm/mach-s3c64xx/irq-pm.c
index c3da1b68d03e..1649c0d1c1b8 100644
--- a/arch/arm/mach-s3c64xx/irq-pm.c
+++ b/arch/arm/mach-s3c64xx/irq-pm.c
@@ -12,12 +12,17 @@
* published by the Free Software Foundation.
*/
+/*
+ * NOTE: Code in this file is not used when booting with Device Tree support.
+ */
+
#include <linux/kernel.h>
#include <linux/syscore_ops.h>
#include <linux/interrupt.h>
#include <linux/serial_core.h>
#include <linux/irq.h>
#include <linux/io.h>
+#include <linux/of.h>
#include <mach/map.h>
@@ -101,6 +106,10 @@ static struct syscore_ops s3c64xx_irq_syscore_ops = {
static __init int s3c64xx_syscore_init(void)
{
+ /* Appropriate drivers (pinctrl, uart) handle this when using DT. */
+ if (of_have_populated_dt())
+ return 0;
+
register_syscore_ops(&s3c64xx_irq_syscore_ops);
return 0;