aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/arm/mach-pxa/Makefile10
-rw-r--r--arch/arm/mach-pxa/e330.c36
-rw-r--r--arch/arm/mach-pxa/e350.c36
-rw-r--r--arch/arm/mach-pxa/e400.c60
-rw-r--r--arch/arm/mach-pxa/e740.c81
-rw-r--r--arch/arm/mach-pxa/e750.c36
-rw-r--r--arch/arm/mach-pxa/e800.c36
-rw-r--r--arch/arm/mach-pxa/eseries.c151
-rw-r--r--arch/arm/mach-pxa/eseries.h3
9 files changed, 295 insertions, 154 deletions
diff --git a/arch/arm/mach-pxa/Makefile b/arch/arm/mach-pxa/Makefile
index 99ecbe7f8506..38db581b9fc5 100644
--- a/arch/arm/mach-pxa/Makefile
+++ b/arch/arm/mach-pxa/Makefile
@@ -38,10 +38,12 @@ obj-$(CONFIG_MACH_TOSA) += tosa.o
38obj-$(CONFIG_MACH_EM_X270) += em-x270.o 38obj-$(CONFIG_MACH_EM_X270) += em-x270.o
39obj-$(CONFIG_MACH_MAGICIAN) += magician.o 39obj-$(CONFIG_MACH_MAGICIAN) += magician.o
40obj-$(CONFIG_ARCH_PXA_ESERIES) += eseries.o eseries_udc.o 40obj-$(CONFIG_ARCH_PXA_ESERIES) += eseries.o eseries_udc.o
41obj-$(CONFIG_MACH_E740) += e740_lcd.o 41obj-$(CONFIG_MACH_E330) += e330.o
42obj-$(CONFIG_MACH_E750) += e750_lcd.o 42obj-$(CONFIG_MACH_E350) += e350.o
43obj-$(CONFIG_MACH_E400) += e400_lcd.o 43obj-$(CONFIG_MACH_E740) += e740.o e740_lcd.o
44obj-$(CONFIG_MACH_E800) += e800_lcd.o 44obj-$(CONFIG_MACH_E750) += e750.o e750_lcd.o
45obj-$(CONFIG_MACH_E400) += e400.o e400_lcd.o
46obj-$(CONFIG_MACH_E800) += e800.o e800_lcd.o
45obj-$(CONFIG_MACH_PALMTX) += palmtx.o 47obj-$(CONFIG_MACH_PALMTX) += palmtx.o
46 48
47ifeq ($(CONFIG_MACH_ZYLONITE),y) 49ifeq ($(CONFIG_MACH_ZYLONITE),y)
diff --git a/arch/arm/mach-pxa/e330.c b/arch/arm/mach-pxa/e330.c
new file mode 100644
index 000000000000..2f4555e2fb91
--- /dev/null
+++ b/arch/arm/mach-pxa/e330.c
@@ -0,0 +1,36 @@
1/*
2 * Hardware definitions for the Toshiba eseries PDAs
3 *
4 * Copyright (c) 2003 Ian Molton <spyro@f2s.com>
5 *
6 * This file is licensed under
7 * the terms of the GNU General Public License version 2. This program
8 * is licensed "as is" without any warranty of any kind, whether express
9 * or implied.
10 *
11 */
12
13#include <linux/kernel.h>
14#include <linux/init.h>
15
16#include <asm/setup.h>
17#include <asm/mach/arch.h>
18#include <asm/mach-types.h>
19
20#include <mach/mfp-pxa25x.h>
21#include <mach/hardware.h>
22
23#include "generic.h"
24#include "eseries.h"
25
26MACHINE_START(E330, "Toshiba e330")
27 /* Maintainer: Ian Molton (spyro@f2s.com) */
28 .phys_io = 0x40000000,
29 .io_pg_offst = (io_p2v(0x40000000) >> 18) & 0xfffc,
30 .boot_params = 0xa0000100,
31 .map_io = pxa_map_io,
32 .init_irq = pxa25x_init_irq,
33 .fixup = eseries_fixup,
34 .timer = &pxa_timer,
35MACHINE_END
36
diff --git a/arch/arm/mach-pxa/e350.c b/arch/arm/mach-pxa/e350.c
new file mode 100644
index 000000000000..5d58deb7eff8
--- /dev/null
+++ b/arch/arm/mach-pxa/e350.c
@@ -0,0 +1,36 @@
1/*
2 * Hardware definitions for the Toshiba eseries PDAs
3 *
4 * Copyright (c) 2003 Ian Molton <spyro@f2s.com>
5 *
6 * This file is licensed under
7 * the terms of the GNU General Public License version 2. This program
8 * is licensed "as is" without any warranty of any kind, whether express
9 * or implied.
10 *
11 */
12
13#include <linux/kernel.h>
14#include <linux/init.h>
15
16#include <asm/setup.h>
17#include <asm/mach/arch.h>
18#include <asm/mach-types.h>
19
20#include <mach/mfp-pxa25x.h>
21#include <mach/hardware.h>
22
23#include "generic.h"
24#include "eseries.h"
25
26MACHINE_START(E350, "Toshiba e350")
27 /* Maintainer: Ian Molton (spyro@f2s.com) */
28 .phys_io = 0x40000000,
29 .io_pg_offst = (io_p2v(0x40000000) >> 18) & 0xfffc,
30 .boot_params = 0xa0000100,
31 .map_io = pxa_map_io,
32 .init_irq = pxa25x_init_irq,
33 .fixup = eseries_fixup,
34 .timer = &pxa_timer,
35MACHINE_END
36
diff --git a/arch/arm/mach-pxa/e400.c b/arch/arm/mach-pxa/e400.c
new file mode 100644
index 000000000000..405e6dcfc3ce
--- /dev/null
+++ b/arch/arm/mach-pxa/e400.c
@@ -0,0 +1,60 @@
1/*
2 * Hardware definitions for the Toshiba eseries PDAs
3 *
4 * Copyright (c) 2003 Ian Molton <spyro@f2s.com>
5 *
6 * This file is licensed under
7 * the terms of the GNU General Public License version 2. This program
8 * is licensed "as is" without any warranty of any kind, whether express
9 * or implied.
10 *
11 */
12
13#include <linux/kernel.h>
14#include <linux/init.h>
15
16#include <asm/setup.h>
17#include <asm/mach/arch.h>
18#include <asm/mach-types.h>
19
20#include <mach/mfp-pxa25x.h>
21#include <mach/hardware.h>
22
23#include "generic.h"
24#include "eseries.h"
25
26static unsigned long e400_pin_config[] __initdata = {
27 /* Chip selects */
28 GPIO15_nCS_1, /* CS1 - Flash */
29 GPIO80_nCS_4, /* CS4 - TMIO */
30
31 /* Clocks */
32 GPIO12_32KHz,
33
34 /* BTUART */
35 GPIO42_BTUART_RXD,
36 GPIO43_BTUART_TXD,
37 GPIO44_BTUART_CTS,
38 GPIO45_GPIO, /* Used by TMIO for #SUSPEND */
39
40 /* wakeup */
41 GPIO0_GPIO | WAKEUP_ON_EDGE_RISE,
42};
43
44static void __init e400_init(void)
45{
46 pxa2xx_mfp_config(ARRAY_AND_SIZE(e400_pin_config));
47}
48
49MACHINE_START(E400, "Toshiba e400")
50 /* Maintainer: Ian Molton (spyro@f2s.com) */
51 .phys_io = 0x40000000,
52 .io_pg_offst = (io_p2v(0x40000000) >> 18) & 0xfffc,
53 .boot_params = 0xa0000100,
54 .map_io = pxa_map_io,
55 .init_irq = pxa25x_init_irq,
56 .fixup = eseries_fixup,
57 .init_machine = e400_init,
58 .timer = &pxa_timer,
59MACHINE_END
60
diff --git a/arch/arm/mach-pxa/e740.c b/arch/arm/mach-pxa/e740.c
new file mode 100644
index 000000000000..560a8a2ebff0
--- /dev/null
+++ b/arch/arm/mach-pxa/e740.c
@@ -0,0 +1,81 @@
1/*
2 * Hardware definitions for the Toshiba eseries PDAs
3 *
4 * Copyright (c) 2003 Ian Molton <spyro@f2s.com>
5 *
6 * This file is licensed under
7 * the terms of the GNU General Public License version 2. This program
8 * is licensed "as is" without any warranty of any kind, whether express
9 * or implied.
10 *
11 */
12
13#include <linux/kernel.h>
14#include <linux/init.h>
15
16#include <asm/setup.h>
17#include <asm/mach/arch.h>
18#include <asm/mach-types.h>
19
20#include <mach/mfp-pxa25x.h>
21#include <mach/hardware.h>
22
23#include "generic.h"
24#include "eseries.h"
25
26static unsigned long e740_pin_config[] __initdata = {
27 /* Chip selects */
28 GPIO15_nCS_1, /* CS1 - Flash */
29 GPIO79_nCS_3, /* CS3 - IMAGEON */
30 GPIO80_nCS_4, /* CS4 - TMIO */
31
32 /* Clocks */
33 GPIO12_32KHz,
34
35 /* BTUART */
36 GPIO42_BTUART_RXD,
37 GPIO43_BTUART_TXD,
38 GPIO44_BTUART_CTS,
39 GPIO45_GPIO, /* Used by TMIO for #SUSPEND */
40
41 /* PC Card */
42 GPIO8_GPIO, /* CD0 */
43 GPIO44_GPIO, /* CD1 */
44 GPIO11_GPIO, /* IRQ0 */
45 GPIO6_GPIO, /* IRQ1 */
46 GPIO27_GPIO, /* RST0 */
47 GPIO24_GPIO, /* RST1 */
48 GPIO20_GPIO, /* PWR0 */
49 GPIO23_GPIO, /* PWR1 */
50 GPIO48_nPOE,
51 GPIO49_nPWE,
52 GPIO50_nPIOR,
53 GPIO51_nPIOW,
54 GPIO52_nPCE_1,
55 GPIO53_nPCE_2,
56 GPIO54_nPSKTSEL,
57 GPIO55_nPREG,
58 GPIO56_nPWAIT,
59 GPIO57_nIOIS16,
60
61 /* wakeup */
62 GPIO0_GPIO | WAKEUP_ON_EDGE_RISE,
63};
64
65static void __init e740_init(void)
66{
67 pxa2xx_mfp_config(ARRAY_AND_SIZE(e740_pin_config));
68}
69
70MACHINE_START(E740, "Toshiba e740")
71 /* Maintainer: Ian Molton (spyro@f2s.com) */
72 .phys_io = 0x40000000,
73 .io_pg_offst = (io_p2v(0x40000000) >> 18) & 0xfffc,
74 .boot_params = 0xa0000100,
75 .map_io = pxa_map_io,
76 .init_irq = pxa25x_init_irq,
77 .fixup = eseries_fixup,
78 .init_machine = e740_init,
79 .timer = &pxa_timer,
80MACHINE_END
81
diff --git a/arch/arm/mach-pxa/e750.c b/arch/arm/mach-pxa/e750.c
new file mode 100644
index 000000000000..bb6f814d5642
--- /dev/null
+++ b/arch/arm/mach-pxa/e750.c
@@ -0,0 +1,36 @@
1/*
2 * Hardware definitions for the Toshiba eseries PDAs
3 *
4 * Copyright (c) 2003 Ian Molton <spyro@f2s.com>
5 *
6 * This file is licensed under
7 * the terms of the GNU General Public License version 2. This program
8 * is licensed "as is" without any warranty of any kind, whether express
9 * or implied.
10 *
11 */
12
13#include <linux/kernel.h>
14#include <linux/init.h>
15
16#include <asm/setup.h>
17#include <asm/mach/arch.h>
18#include <asm/mach-types.h>
19
20#include <mach/mfp-pxa25x.h>
21#include <mach/hardware.h>
22
23#include "generic.h"
24#include "eseries.h"
25
26MACHINE_START(E750, "Toshiba e750")
27 /* Maintainer: Ian Molton (spyro@f2s.com) */
28 .phys_io = 0x40000000,
29 .io_pg_offst = (io_p2v(0x40000000) >> 18) & 0xfffc,
30 .boot_params = 0xa0000100,
31 .map_io = pxa_map_io,
32 .init_irq = pxa25x_init_irq,
33 .fixup = eseries_fixup,
34 .timer = &pxa_timer,
35MACHINE_END
36
diff --git a/arch/arm/mach-pxa/e800.c b/arch/arm/mach-pxa/e800.c
new file mode 100644
index 000000000000..77ebe91c3e65
--- /dev/null
+++ b/arch/arm/mach-pxa/e800.c
@@ -0,0 +1,36 @@
1/*
2 * Hardware definitions for the Toshiba eseries PDAs
3 *
4 * Copyright (c) 2003 Ian Molton <spyro@f2s.com>
5 *
6 * This file is licensed under
7 * the terms of the GNU General Public License version 2. This program
8 * is licensed "as is" without any warranty of any kind, whether express
9 * or implied.
10 *
11 */
12
13#include <linux/kernel.h>
14#include <linux/init.h>
15
16#include <asm/setup.h>
17#include <asm/mach/arch.h>
18#include <asm/mach-types.h>
19
20#include <mach/mfp-pxa25x.h>
21#include <mach/hardware.h>
22
23#include "generic.h"
24#include "eseries.h"
25
26MACHINE_START(E800, "Toshiba e800")
27 /* Maintainer: Ian Molton (spyro@f2s.com) */
28 .phys_io = 0x40000000,
29 .io_pg_offst = (io_p2v(0x40000000) >> 18) & 0xfffc,
30 .boot_params = 0xa0000100,
31 .map_io = pxa_map_io,
32 .init_irq = pxa25x_init_irq,
33 .fixup = eseries_fixup,
34 .timer = &pxa_timer,
35MACHINE_END
36
diff --git a/arch/arm/mach-pxa/eseries.c b/arch/arm/mach-pxa/eseries.c
index 001a252bd514..1872faa11a27 100644
--- a/arch/arm/mach-pxa/eseries.c
+++ b/arch/arm/mach-pxa/eseries.c
@@ -22,65 +22,8 @@
22 22
23#include "generic.h" 23#include "generic.h"
24 24
25static unsigned long e740_pin_config[] __initdata = {
26 /* Chip selects */
27 GPIO15_nCS_1, /* CS1 - Flash */
28 GPIO79_nCS_3, /* CS3 - IMAGEON */
29 GPIO80_nCS_4, /* CS4 - TMIO */
30
31 /* Clocks */
32 GPIO12_32KHz,
33
34 /* BTUART */
35 GPIO42_BTUART_RXD,
36 GPIO43_BTUART_TXD,
37 GPIO44_BTUART_CTS,
38 GPIO45_GPIO, /* Used by TMIO for #SUSPEND */
39
40 /* PC Card */
41 GPIO8_GPIO, /* CD0 */
42 GPIO44_GPIO, /* CD1 */
43 GPIO11_GPIO, /* IRQ0 */
44 GPIO6_GPIO, /* IRQ1 */
45 GPIO27_GPIO, /* RST0 */
46 GPIO24_GPIO, /* RST1 */
47 GPIO20_GPIO, /* PWR0 */
48 GPIO23_GPIO, /* PWR1 */
49 GPIO48_nPOE,
50 GPIO49_nPWE,
51 GPIO50_nPIOR,
52 GPIO51_nPIOW,
53 GPIO52_nPCE_1,
54 GPIO53_nPCE_2,
55 GPIO54_nPSKTSEL,
56 GPIO55_nPREG,
57 GPIO56_nPWAIT,
58 GPIO57_nIOIS16,
59
60 /* wakeup */
61 GPIO0_GPIO | WAKEUP_ON_EDGE_RISE,
62};
63
64static unsigned long e400_pin_config[] __initdata = {
65 /* Chip selects */
66 GPIO15_nCS_1, /* CS1 - Flash */
67 GPIO80_nCS_4, /* CS4 - TMIO */
68
69 /* Clocks */
70 GPIO12_32KHz,
71
72 /* BTUART */
73 GPIO42_BTUART_RXD,
74 GPIO43_BTUART_TXD,
75 GPIO44_BTUART_CTS,
76 GPIO45_GPIO, /* Used by TMIO for #SUSPEND */
77
78 /* wakeup */
79 GPIO0_GPIO | WAKEUP_ON_EDGE_RISE,
80};
81
82/* Only e800 has 128MB RAM */ 25/* Only e800 has 128MB RAM */
83static void __init eseries_fixup(struct machine_desc *desc, 26void __init eseries_fixup(struct machine_desc *desc,
84 struct tag *tags, char **cmdline, struct meminfo *mi) 27 struct tag *tags, char **cmdline, struct meminfo *mi)
85{ 28{
86 mi->nr_banks=1; 29 mi->nr_banks=1;
@@ -92,95 +35,3 @@ static void __init eseries_fixup(struct machine_desc *desc,
92 mi->bank[0].size = (64*1024*1024); 35 mi->bank[0].size = (64*1024*1024);
93} 36}
94 37
95static void __init e740_init(void)
96{
97 pxa2xx_mfp_config(ARRAY_AND_SIZE(e740_pin_config));
98}
99
100static void __init e400_init(void)
101{
102 pxa2xx_mfp_config(ARRAY_AND_SIZE(e400_pin_config));
103}
104
105/* e-series machine definitions */
106
107#ifdef CONFIG_MACH_E330
108MACHINE_START(E330, "Toshiba e330")
109 /* Maintainer: Ian Molton (spyro@f2s.com) */
110 .phys_io = 0x40000000,
111 .io_pg_offst = (io_p2v(0x40000000) >> 18) & 0xfffc,
112 .boot_params = 0xa0000100,
113 .map_io = pxa_map_io,
114 .init_irq = pxa25x_init_irq,
115 .fixup = eseries_fixup,
116 .timer = &pxa_timer,
117MACHINE_END
118#endif
119
120#ifdef CONFIG_MACH_E350
121MACHINE_START(E350, "Toshiba e350")
122 /* Maintainer: Ian Molton (spyro@f2s.com) */
123 .phys_io = 0x40000000,
124 .io_pg_offst = (io_p2v(0x40000000) >> 18) & 0xfffc,
125 .boot_params = 0xa0000100,
126 .map_io = pxa_map_io,
127 .init_irq = pxa25x_init_irq,
128 .fixup = eseries_fixup,
129 .timer = &pxa_timer,
130MACHINE_END
131#endif
132
133#ifdef CONFIG_MACH_E740
134MACHINE_START(E740, "Toshiba e740")
135 /* Maintainer: Ian Molton (spyro@f2s.com) */
136 .phys_io = 0x40000000,
137 .io_pg_offst = (io_p2v(0x40000000) >> 18) & 0xfffc,
138 .boot_params = 0xa0000100,
139 .map_io = pxa_map_io,
140 .init_irq = pxa25x_init_irq,
141 .fixup = eseries_fixup,
142 .init_machine = e740_init,
143 .timer = &pxa_timer,
144MACHINE_END
145#endif
146
147#ifdef CONFIG_MACH_E750
148MACHINE_START(E750, "Toshiba e750")
149 /* Maintainer: Ian Molton (spyro@f2s.com) */
150 .phys_io = 0x40000000,
151 .io_pg_offst = (io_p2v(0x40000000) >> 18) & 0xfffc,
152 .boot_params = 0xa0000100,
153 .map_io = pxa_map_io,
154 .init_irq = pxa25x_init_irq,
155 .fixup = eseries_fixup,
156 .timer = &pxa_timer,
157MACHINE_END
158#endif
159
160#ifdef CONFIG_MACH_E400
161MACHINE_START(E400, "Toshiba e400")
162 /* Maintainer: Ian Molton (spyro@f2s.com) */
163 .phys_io = 0x40000000,
164 .io_pg_offst = (io_p2v(0x40000000) >> 18) & 0xfffc,
165 .boot_params = 0xa0000100,
166 .map_io = pxa_map_io,
167 .init_irq = pxa25x_init_irq,
168 .fixup = eseries_fixup,
169 .init_machine = e400_init,
170 .timer = &pxa_timer,
171MACHINE_END
172#endif
173
174#ifdef CONFIG_MACH_E800
175MACHINE_START(E800, "Toshiba e800")
176 /* Maintainer: Ian Molton (spyro@f2s.com) */
177 .phys_io = 0x40000000,
178 .io_pg_offst = (io_p2v(0x40000000) >> 18) & 0xfffc,
179 .boot_params = 0xa0000100,
180 .map_io = pxa_map_io,
181 .init_irq = pxa25x_init_irq,
182 .fixup = eseries_fixup,
183 .timer = &pxa_timer,
184MACHINE_END
185#endif
186
diff --git a/arch/arm/mach-pxa/eseries.h b/arch/arm/mach-pxa/eseries.h
new file mode 100644
index 000000000000..bc74e21d054a
--- /dev/null
+++ b/arch/arm/mach-pxa/eseries.h
@@ -0,0 +1,3 @@
1void __init eseries_fixup(struct machine_desc *desc,
2 struct tag *tags, char **cmdline, struct meminfo *mi);
3