Commit 0f102b6ccec15c057d4d82f9731e6b780c9f8132
1 parent
0f374561b5
Exists in
smarc-imx_3.14.28_1.0.0_ga
and in
1 other branch
ARM: mmp: avoid to include head file in mach-mmp
pxa910_set_wake() & mmp2_set_wake() are both declared in head files of arch/arm/mach-mmp/include/mach directory. If we include these head files in irq-mmp driver, it blocks the multiplatform build. So adjust the code. Signed-off-by: Haojian Zhuang <haojian.zhuang@gmail.com>
Showing 4 changed files with 19 additions and 14 deletions Side-by-side Diff
arch/arm/mach-mmp/mmp2.c
... | ... | @@ -13,6 +13,8 @@ |
13 | 13 | #include <linux/kernel.h> |
14 | 14 | #include <linux/init.h> |
15 | 15 | #include <linux/io.h> |
16 | +#include <linux/irq.h> | |
17 | +#include <linux/irqchip/mmp.h> | |
16 | 18 | #include <linux/platform_device.h> |
17 | 19 | |
18 | 20 | #include <asm/hardware/cache-tauros2.h> |
... | ... | @@ -26,6 +28,7 @@ |
26 | 28 | #include <mach/mfp.h> |
27 | 29 | #include <mach/devices.h> |
28 | 30 | #include <mach/mmp2.h> |
31 | +#include <mach/pm-mmp2.h> | |
29 | 32 | |
30 | 33 | #include "common.h" |
31 | 34 | |
... | ... | @@ -94,6 +97,9 @@ |
94 | 97 | void __init mmp2_init_irq(void) |
95 | 98 | { |
96 | 99 | mmp2_init_icu(); |
100 | +#ifdef CONFIG_PM | |
101 | + icu_irq_chip.irq_set_wake = mmp2_set_wake; | |
102 | +#endif | |
97 | 103 | } |
98 | 104 | |
99 | 105 | static int __init mmp2_init(void) |
arch/arm/mach-mmp/pxa910.c
... | ... | @@ -12,6 +12,8 @@ |
12 | 12 | #include <linux/init.h> |
13 | 13 | #include <linux/list.h> |
14 | 14 | #include <linux/io.h> |
15 | +#include <linux/irq.h> | |
16 | +#include <linux/irqchip/mmp.h> | |
15 | 17 | #include <linux/platform_device.h> |
16 | 18 | |
17 | 19 | #include <asm/hardware/cache-tauros2.h> |
... | ... | @@ -23,6 +25,7 @@ |
23 | 25 | #include <mach/dma.h> |
24 | 26 | #include <mach/mfp.h> |
25 | 27 | #include <mach/devices.h> |
28 | +#include <mach/pm-pxa910.h> | |
26 | 29 | #include <mach/pxa910.h> |
27 | 30 | |
28 | 31 | #include "common.h" |
... | ... | @@ -80,6 +83,9 @@ |
80 | 83 | void __init pxa910_init_irq(void) |
81 | 84 | { |
82 | 85 | icu_init_irq(); |
86 | +#ifdef CONFIG_PM | |
87 | + icu_irq_chip.irq_set_wake = pxa910_set_wake; | |
88 | +#endif | |
83 | 89 | } |
84 | 90 | |
85 | 91 | static int __init pxa910_init(void) |
drivers/irqchip/irq-mmp.c
... | ... | @@ -26,13 +26,6 @@ |
26 | 26 | |
27 | 27 | #include <mach/irqs.h> |
28 | 28 | |
29 | -#ifdef CONFIG_CPU_MMP2 | |
30 | -#include <mach/pm-mmp2.h> | |
31 | -#endif | |
32 | -#ifdef CONFIG_CPU_PXA910 | |
33 | -#include <mach/pm-pxa910.h> | |
34 | -#endif | |
35 | - | |
36 | 29 | #include "irqchip.h" |
37 | 30 | |
38 | 31 | #define MAX_ICU_NR 16 |
... | ... | @@ -132,7 +125,7 @@ |
132 | 125 | } |
133 | 126 | } |
134 | 127 | |
135 | -static struct irq_chip icu_irq_chip = { | |
128 | +struct irq_chip icu_irq_chip = { | |
136 | 129 | .name = "icu_irq", |
137 | 130 | .irq_mask = icu_mask_irq, |
138 | 131 | .irq_mask_ack = icu_mask_ack_irq, |
... | ... | @@ -251,9 +244,6 @@ |
251 | 244 | } |
252 | 245 | irq_set_default_host(icu_data[0].domain); |
253 | 246 | set_handle_irq(mmp_handle_irq); |
254 | -#ifdef CONFIG_CPU_PXA910 | |
255 | - icu_irq_chip.irq_set_wake = pxa910_set_wake; | |
256 | -#endif | |
257 | 247 | } |
258 | 248 | |
259 | 249 | /* MMP2 (ARMv7) */ |
... | ... | @@ -358,9 +348,6 @@ |
358 | 348 | } |
359 | 349 | irq_set_default_host(icu_data[0].domain); |
360 | 350 | set_handle_irq(mmp2_handle_irq); |
361 | -#ifdef CONFIG_CPU_MMP2 | |
362 | - icu_irq_chip.irq_set_wake = mmp2_set_wake; | |
363 | -#endif | |
364 | 351 | } |
365 | 352 | |
366 | 353 | #ifdef CONFIG_OF |
include/linux/irqchip/mmp.h