summaryrefslogtreecommitdiffstats
path: root/target/linux/s3c24xx/patches-2.6.31/011-mach-gta02.patch
blob: dd630aa770e3d636e81696290e233faffc4e594b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
From 0b75f16634c05f17151bc4409be3a816630bf9f1 Mon Sep 17 00:00:00 2001
From: Lars-Peter Clausen <lars@metafoo.de>
Date: Tue, 21 Jul 2009 12:42:47 +0200
Subject: [PATCH] 015-mach-gta02.patch

---
 arch/arm/mach-s3c2410/include/mach/irqs.h |   33 +++++++++++++++++++++++++++-
 arch/arm/mach-s3c2442/Kconfig             |    3 +-
 arch/arm/mach-s3c2442/Makefile            |    3 ++
 3 files changed, 36 insertions(+), 3 deletions(-)

diff --git a/arch/arm/mach-s3c2410/include/mach/irqs.h b/arch/arm/mach-s3c2410/include/mach/irqs.h
index 2a2384f..8c65c51 100644
--- a/arch/arm/mach-s3c2410/include/mach/irqs.h
+++ b/arch/arm/mach-s3c2410/include/mach/irqs.h
@@ -153,9 +153,9 @@
 #define IRQ_S3C2443_AC97	S3C2410_IRQSUB(28)
 
 #ifdef CONFIG_CPU_S3C2443
-#define NR_IRQS (IRQ_S3C2443_AC97+1)
+#define _NR_IRQS (IRQ_S3C2443_AC97+1)
 #else
-#define NR_IRQS (IRQ_S3C2440_AC97+1)
+#define _NR_IRQS (IRQ_S3C2440_AC97+1)
 #endif
 
 /* compatibility define. */
@@ -167,4 +167,33 @@
 /* Our FIQs are routable from IRQ_EINT0 to IRQ_ADCPARENT */
 #define FIQ_START		IRQ_EINT0
 
+
+/*
+ * The next 16 interrupts are for board specific purposes.  Since
+ * the kernel can only run on one machine at a time, we can re-use
+ * these.  If you need more, increase IRQ_BOARD_END, but keep it
+ * within sensible limits.
+ */
+#define IRQ_BOARD_START         _NR_IRQS
+#define IRQ_BOARD_END           (_NR_IRQS + 10)
+
+#if defined(CONFIG_MACH_NEO1973_GTA02)
+#define NR_IRQS                 (IRQ_BOARD_END)
+#else
+#define NR_IRQS                 (IRQ_BOARD_START)
+#endif
+
+/* Neo1973 GTA02 interrupts */
+#define NEO1973_GTA02_IRQ(x)    (IRQ_BOARD_START + (x))
+#define IRQ_GLAMO(x)            NEO1973_GTA02_IRQ(x)
+#define IRQ_GLAMO_HOSTBUS       IRQ_GLAMO(0)
+#define IRQ_GLAMO_JPEG          IRQ_GLAMO(1)
+#define IRQ_GLAMO_MPEG          IRQ_GLAMO(2)
+#define IRQ_GLAMO_MPROC1        IRQ_GLAMO(3)
+#define IRQ_GLAMO_MPROC0        IRQ_GLAMO(4)
+#define IRQ_GLAMO_CMDQUEUE      IRQ_GLAMO(5)
+#define IRQ_GLAMO_2D            IRQ_GLAMO(6)
+#define IRQ_GLAMO_MMC           IRQ_GLAMO(7)
+#define IRQ_GLAMO_RISC          IRQ_GLAMO(8)
+
 #endif /* __ASM_ARCH_IRQ_H */
diff --git a/arch/arm/mach-s3c2442/Kconfig b/arch/arm/mach-s3c2442/Kconfig
index 570cb81..ef8a6d3 100644
--- a/arch/arm/mach-s3c2442/Kconfig
+++ b/arch/arm/mach-s3c2442/Kconfig
@@ -34,6 +34,10 @@ config MACH_NEO1973_GTA02
 	select POWER_SUPPLY
 	select MACH_NEO1973
 	select S3C2410_PWM
+	select FIQ
+	select S3C_PWM
+	select S3C_DEV_USB_HOST
+	select S3C24XX_GPIO_EXTRA64
 	help
 	   Say Y here if you are using the Openmoko GTA02 / Freerunner GSM Phone
 
diff --git a/arch/arm/mach-s3c2442/Makefile b/arch/arm/mach-s3c2442/Makefile
index 1350103..d76be29 100644
--- a/arch/arm/mach-s3c2442/Makefile
+++ b/arch/arm/mach-s3c2442/Makefile
@@ -9,6 +9,8 @@ obj-m				:=
 obj-n				:=
 obj-				:=
 
+obj-$(CONFIG_S3C2440_C_FIQ)	+= fiq_c_isr.o
+
 obj-$(CONFIG_CPU_S3C2442)	+= s3c2442.o
 obj-$(CONFIG_CPU_S3C2442)	+= clock.o
 
-- 
1.5.6.5