aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap1/board-perseus2.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-omap1/board-perseus2.c')
-rw-r--r--arch/arm/mach-omap1/board-perseus2.c75
1 files changed, 36 insertions, 39 deletions
diff --git a/arch/arm/mach-omap1/board-perseus2.c b/arch/arm/mach-omap1/board-perseus2.c
index 04b1befaced6..203ae07550db 100644
--- a/arch/arm/mach-omap1/board-perseus2.c
+++ b/arch/arm/mach-omap1/board-perseus2.c
@@ -264,6 +264,39 @@ static void __init perseus2_init_smc91x(void)
264 264
265static void __init omap_perseus2_init(void) 265static void __init omap_perseus2_init(void)
266{ 266{
267 /* Early, board-dependent init */
268
269 /*
270 * Hold GSM Reset until needed
271 */
272 omap_writew(omap_readw(OMAP7XX_DSP_M_CTL) & ~1, OMAP7XX_DSP_M_CTL);
273
274 /*
275 * UARTs -> done automagically by 8250 driver
276 */
277
278 /*
279 * CSx timings, GPIO Mux ... setup
280 */
281
282 /* Flash: CS0 timings setup */
283 omap_writel(0x0000fff3, OMAP7XX_FLASH_CFG_0);
284 omap_writel(0x00000088, OMAP7XX_FLASH_ACFG_0);
285
286 /*
287 * Ethernet support through the debug board
288 * CS1 timings setup
289 */
290 omap_writel(0x0000fff3, OMAP7XX_FLASH_CFG_1);
291 omap_writel(0x00000000, OMAP7XX_FLASH_ACFG_1);
292
293 /*
294 * Configure MPU_EXT_NIRQ IO in IO_CONF9 register,
295 * It is used as the Ethernet controller interrupt
296 */
297 omap_writel(omap_readl(OMAP7XX_IO_CONF_9) & 0x1FFFFFFF,
298 OMAP7XX_IO_CONF_9);
299
267 perseus2_init_smc91x(); 300 perseus2_init_smc91x();
268 301
269 if (gpio_request(P2_NAND_RB_GPIO_PIN, "NAND ready") < 0) 302 if (gpio_request(P2_NAND_RB_GPIO_PIN, "NAND ready") < 0)
@@ -293,11 +326,6 @@ static void __init omap_perseus2_init(void)
293 omap_register_i2c_bus(1, 100, NULL, 0); 326 omap_register_i2c_bus(1, 100, NULL, 0);
294} 327}
295 328
296static void __init omap_perseus2_init_irq(void)
297{
298 omap1_init_common_hw();
299 omap1_init_irq();
300}
301/* Only FPGA needs to be mapped here. All others are done with ioremap */ 329/* Only FPGA needs to be mapped here. All others are done with ioremap */
302static struct map_desc omap_perseus2_io_desc[] __initdata = { 330static struct map_desc omap_perseus2_io_desc[] __initdata = {
303 { 331 {
@@ -310,49 +338,18 @@ static struct map_desc omap_perseus2_io_desc[] __initdata = {
310 338
311static void __init omap_perseus2_map_io(void) 339static void __init omap_perseus2_map_io(void)
312{ 340{
313 omap1_map_common_io(); 341 omap7xx_map_io();
314 iotable_init(omap_perseus2_io_desc, 342 iotable_init(omap_perseus2_io_desc,
315 ARRAY_SIZE(omap_perseus2_io_desc)); 343 ARRAY_SIZE(omap_perseus2_io_desc));
316
317 /* Early, board-dependent init */
318
319 /*
320 * Hold GSM Reset until needed
321 */
322 omap_writew(omap_readw(OMAP7XX_DSP_M_CTL) & ~1, OMAP7XX_DSP_M_CTL);
323
324 /*
325 * UARTs -> done automagically by 8250 driver
326 */
327
328 /*
329 * CSx timings, GPIO Mux ... setup
330 */
331
332 /* Flash: CS0 timings setup */
333 omap_writel(0x0000fff3, OMAP7XX_FLASH_CFG_0);
334 omap_writel(0x00000088, OMAP7XX_FLASH_ACFG_0);
335
336 /*
337 * Ethernet support through the debug board
338 * CS1 timings setup
339 */
340 omap_writel(0x0000fff3, OMAP7XX_FLASH_CFG_1);
341 omap_writel(0x00000000, OMAP7XX_FLASH_ACFG_1);
342
343 /*
344 * Configure MPU_EXT_NIRQ IO in IO_CONF9 register,
345 * It is used as the Ethernet controller interrupt
346 */
347 omap_writel(omap_readl(OMAP7XX_IO_CONF_9) & 0x1FFFFFFF, OMAP7XX_IO_CONF_9);
348} 344}
349 345
350MACHINE_START(OMAP_PERSEUS2, "OMAP730 Perseus2") 346MACHINE_START(OMAP_PERSEUS2, "OMAP730 Perseus2")
351 /* Maintainer: Kevin Hilman <kjh@hilman.org> */ 347 /* Maintainer: Kevin Hilman <kjh@hilman.org> */
352 .atag_offset = 0x100, 348 .atag_offset = 0x100,
353 .map_io = omap_perseus2_map_io, 349 .map_io = omap_perseus2_map_io,
350 .init_early = omap1_init_early,
354 .reserve = omap_reserve, 351 .reserve = omap_reserve,
355 .init_irq = omap_perseus2_init_irq, 352 .init_irq = omap1_init_irq,
356 .init_machine = omap_perseus2_init, 353 .init_machine = omap_perseus2_init,
357 .timer = &omap1_timer, 354 .timer = &omap1_timer,
358MACHINE_END 355MACHINE_END