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