aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm
diff options
context:
space:
mode:
authorDaniel Mack <zonque@gmail.com>2012-07-25 17:52:52 +0200
committerHaojian Zhuang <haojian.zhuang@gmail.com>2012-08-16 16:15:01 +0800
commit82ce44d104dc97f4f7fbd035ca34f723f0fb7287 (patch)
treec6758ff48d48a0f70aea2e345cd93b5e42b244da /arch/arm
parentARM: pxa: add devicetree code for irq handling (diff)
downloadlinux-dev-82ce44d104dc97f4f7fbd035ca34f723f0fb7287.tar.xz
linux-dev-82ce44d104dc97f4f7fbd035ca34f723f0fb7287.zip
ARM: pxa3xx: skip default device initialization when booting via DT
When booting via DT, the default PXA devices must not have been probed before, otherwise the augmented information from the device tree is ignored. Signed-off-by: Daniel Mack <zonque@gmail.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Haojian Zhuang <haojian.zhuang@gmail.com>
Diffstat (limited to 'arch/arm')
-rw-r--r--arch/arm/mach-pxa/pxa3xx.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/arm/mach-pxa/pxa3xx.c b/arch/arm/mach-pxa/pxa3xx.c
index 1827d3ce2d5b..4a9d04a57de5 100644
--- a/arch/arm/mach-pxa/pxa3xx.c
+++ b/arch/arm/mach-pxa/pxa3xx.c
@@ -19,6 +19,7 @@
#include <linux/platform_device.h>
#include <linux/irq.h>
#include <linux/io.h>
+#include <linux/of.h>
#include <linux/syscore_ops.h>
#include <linux/i2c/pxa-i2c.h>
@@ -479,7 +480,8 @@ static int __init pxa3xx_init(void)
register_syscore_ops(&pxa3xx_mfp_syscore_ops);
register_syscore_ops(&pxa3xx_clock_syscore_ops);
- ret = platform_add_devices(devices, ARRAY_SIZE(devices));
+ if (!of_have_populated_dt())
+ ret = platform_add_devices(devices, ARRAY_SIZE(devices));
}
return ret;