aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-pxa/colibri-pxa270.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-pxa/colibri-pxa270.c')
-rw-r--r--arch/arm/mach-pxa/colibri-pxa270.c29
1 files changed, 26 insertions, 3 deletions
diff --git a/arch/arm/mach-pxa/colibri-pxa270.c b/arch/arm/mach-pxa/colibri-pxa270.c
index b4f53ccf3e80..98673ac6efd0 100644
--- a/arch/arm/mach-pxa/colibri-pxa270.c
+++ b/arch/arm/mach-pxa/colibri-pxa270.c
@@ -110,17 +110,17 @@ static inline void colibri_pxa270_nor_init(void) {}
110 ******************************************************************************/ 110 ******************************************************************************/
111#if defined(CONFIG_DM9000) || defined(CONFIG_DM9000_MODULE) 111#if defined(CONFIG_DM9000) || defined(CONFIG_DM9000_MODULE)
112static struct resource colibri_pxa270_dm9000_resources[] = { 112static struct resource colibri_pxa270_dm9000_resources[] = {
113 [0] = { 113 {
114 .start = PXA_CS2_PHYS, 114 .start = PXA_CS2_PHYS,
115 .end = PXA_CS2_PHYS + 3, 115 .end = PXA_CS2_PHYS + 3,
116 .flags = IORESOURCE_MEM, 116 .flags = IORESOURCE_MEM,
117 }, 117 },
118 [1] = { 118 {
119 .start = PXA_CS2_PHYS + 4, 119 .start = PXA_CS2_PHYS + 4,
120 .end = PXA_CS2_PHYS + 4 + 500, 120 .end = PXA_CS2_PHYS + 4 + 500,
121 .flags = IORESOURCE_MEM, 121 .flags = IORESOURCE_MEM,
122 }, 122 },
123 [2] = { 123 {
124 .start = gpio_to_irq(GPIO114_COLIBRI_PXA270_ETH_IRQ), 124 .start = gpio_to_irq(GPIO114_COLIBRI_PXA270_ETH_IRQ),
125 .end = gpio_to_irq(GPIO114_COLIBRI_PXA270_ETH_IRQ), 125 .end = gpio_to_irq(GPIO114_COLIBRI_PXA270_ETH_IRQ),
126 .flags = IORESOURCE_IRQ | IRQF_TRIGGER_RISING, 126 .flags = IORESOURCE_IRQ | IRQF_TRIGGER_RISING,
@@ -187,12 +187,25 @@ static void __init colibri_pxa270_init(void)
187 case COLIBRI_PXA270_EVALBOARD: 187 case COLIBRI_PXA270_EVALBOARD:
188 colibri_pxa270_evalboard_init(); 188 colibri_pxa270_evalboard_init();
189 break; 189 break;
190 case COLIBRI_PXA270_INCOME:
191 colibri_pxa270_income_boardinit();
192 break;
190 default: 193 default:
191 printk(KERN_ERR "Illegal colibri_pxa270_baseboard type %d\n", 194 printk(KERN_ERR "Illegal colibri_pxa270_baseboard type %d\n",
192 colibri_pxa270_baseboard); 195 colibri_pxa270_baseboard);
193 } 196 }
194} 197}
195 198
199/* The "Income s.r.o. SH-Dmaster PXA270 SBC" board can be booted either
200 * with the INCOME mach type or with COLIBRI and the kernel parameter
201 * "colibri_pxa270_baseboard=1"
202 */
203static void __init colibri_pxa270_income_init(void)
204{
205 colibri_pxa270_baseboard = COLIBRI_PXA270_INCOME;
206 colibri_pxa270_init();
207}
208
196MACHINE_START(COLIBRI, "Toradex Colibri PXA270") 209MACHINE_START(COLIBRI, "Toradex Colibri PXA270")
197 .phys_io = 0x40000000, 210 .phys_io = 0x40000000,
198 .io_pg_offst = (io_p2v(0x40000000) >> 18) & 0xfffc, 211 .io_pg_offst = (io_p2v(0x40000000) >> 18) & 0xfffc,
@@ -203,3 +216,13 @@ MACHINE_START(COLIBRI, "Toradex Colibri PXA270")
203 .timer = &pxa_timer, 216 .timer = &pxa_timer,
204MACHINE_END 217MACHINE_END
205 218
219MACHINE_START(INCOME, "Income s.r.o. SH-Dmaster PXA270 SBC")
220 .phys_io = 0x40000000,
221 .io_pg_offst = (io_p2v(0x40000000) >> 18) & 0xfffc,
222 .boot_params = 0xa0000100,
223 .init_machine = colibri_pxa270_income_init,
224 .map_io = pxa_map_io,
225 .init_irq = pxa27x_init_irq,
226 .timer = &pxa_timer,
227MACHINE_END
228