aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-exynos
diff options
context:
space:
mode:
authorTomasz Figa <t.figa@samsung.com>2012-11-06 18:44:51 -0500
committerKukjin Kim <kgene.kim@samsung.com>2012-11-06 19:12:10 -0500
commitab7b51ff9e3713995fb5f5a2ded22af06aed2847 (patch)
tree038945cd6e3c014f0b230113494d1f89d86414ce /arch/arm/mach-exynos
parent86666adc1e594a3e98407da21f5f2bac587ff0cf (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.c7
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);