diff options
author | Tomasz Figa <t.figa@samsung.com> | 2012-11-06 18:44:51 -0500 |
---|---|---|
committer | Kukjin Kim <kgene.kim@samsung.com> | 2012-11-06 19:12:10 -0500 |
commit | ab7b51ff9e3713995fb5f5a2ded22af06aed2847 (patch) | |
tree | 038945cd6e3c014f0b230113494d1f89d86414ce /arch/arm/mach-exynos | |
parent | 86666adc1e594a3e98407da21f5f2bac587ff0cf (diff) |
ARM: EXYNOS: Skip wakeup-int setup if pinctrl driver is used on EXYNOS4X12
This patch modifies the old wakeup interrupt initialization code to
detect pinctrl driver by using for_each_matching_node instead of
for_each_compatible_node and adds match table for both EXYNOS4210 and
EXYNOS4X12.
Signed-off-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Thomas Abraham <thomas.abraham@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Diffstat (limited to 'arch/arm/mach-exynos')
-rw-r--r-- | arch/arm/mach-exynos/common.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/arch/arm/mach-exynos/common.c b/arch/arm/mach-exynos/common.c index 1947be8e5f5b..4af8284f3597 100644 --- a/arch/arm/mach-exynos/common.c +++ b/arch/arm/mach-exynos/common.c | |||
@@ -997,11 +997,14 @@ static int __init exynos_init_irq_eint(void) | |||
997 | * platforms switch over to using the pinctrl driver, the wakeup | 997 | * platforms switch over to using the pinctrl driver, the wakeup |
998 | * interrupt support code here can be completely removed. | 998 | * interrupt support code here can be completely removed. |
999 | */ | 999 | */ |
1000 | static const struct of_device_id exynos_pinctrl_ids[] = { | ||
1001 | { .compatible = "samsung,pinctrl-exynos4210", }, | ||
1002 | { .compatible = "samsung,pinctrl-exynos4x12", }, | ||
1003 | }; | ||
1000 | struct device_node *pctrl_np, *wkup_np; | 1004 | struct device_node *pctrl_np, *wkup_np; |
1001 | const char *pctrl_compat = "samsung,pinctrl-exynos4210"; | ||
1002 | const char *wkup_compat = "samsung,exynos4210-wakeup-eint"; | 1005 | const char *wkup_compat = "samsung,exynos4210-wakeup-eint"; |
1003 | 1006 | ||
1004 | for_each_compatible_node(pctrl_np, NULL, pctrl_compat) { | 1007 | for_each_matching_node(pctrl_np, exynos_pinctrl_ids) { |
1005 | if (of_device_is_available(pctrl_np)) { | 1008 | if (of_device_is_available(pctrl_np)) { |
1006 | wkup_np = of_find_compatible_node(pctrl_np, NULL, | 1009 | wkup_np = of_find_compatible_node(pctrl_np, NULL, |
1007 | wkup_compat); | 1010 | wkup_compat); |