aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2/board-omap3beagle.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-omap2/board-omap3beagle.c')
-rw-r--r--arch/arm/mach-omap2/board-omap3beagle.c32
1 files changed, 2 insertions, 30 deletions
diff --git a/arch/arm/mach-omap2/board-omap3beagle.c b/arch/arm/mach-omap2/board-omap3beagle.c
index 0ab0c26db4dd..87969c7df652 100644
--- a/arch/arm/mach-omap2/board-omap3beagle.c
+++ b/arch/arm/mach-omap2/board-omap3beagle.c
@@ -48,9 +48,6 @@
48#include "mux.h" 48#include "mux.h"
49#include "hsmmc.h" 49#include "hsmmc.h"
50 50
51#define GPMC_CS0_BASE 0x60
52#define GPMC_CS_SIZE 0x30
53
54#define NAND_BLOCK_SIZE SZ_128K 51#define NAND_BLOCK_SIZE SZ_128K
55 52
56static struct mtd_partition omap3beagle_nand_partitions[] = { 53static struct mtd_partition omap3beagle_nand_partitions[] = {
@@ -93,20 +90,6 @@ static struct omap_nand_platform_data omap3beagle_nand_data = {
93 .dev_ready = NULL, 90 .dev_ready = NULL,
94}; 91};
95 92
96static struct resource omap3beagle_nand_resource = {
97 .flags = IORESOURCE_MEM,
98};
99
100static struct platform_device omap3beagle_nand_device = {
101 .name = "omap2-nand",
102 .id = -1,
103 .dev = {
104 .platform_data = &omap3beagle_nand_data,
105 },
106 .num_resources = 1,
107 .resource = &omap3beagle_nand_resource,
108};
109
110/* DSS */ 93/* DSS */
111 94
112static int beagle_enable_dvi(struct omap_dss_device *dssdev) 95static int beagle_enable_dvi(struct omap_dss_device *dssdev)
@@ -424,8 +407,6 @@ static void __init omap3beagle_flash_init(void)
424 u8 cs = 0; 407 u8 cs = 0;
425 u8 nandcs = GPMC_CS_NUM + 1; 408 u8 nandcs = GPMC_CS_NUM + 1;
426 409
427 u32 gpmc_base_add = OMAP34XX_GPMC_VIRT;
428
429 /* find out the chip-select on which NAND exists */ 410 /* find out the chip-select on which NAND exists */
430 while (cs < GPMC_CS_NUM) { 411 while (cs < GPMC_CS_NUM) {
431 u32 ret = 0; 412 u32 ret = 0;
@@ -447,12 +428,9 @@ static void __init omap3beagle_flash_init(void)
447 428
448 if (nandcs < GPMC_CS_NUM) { 429 if (nandcs < GPMC_CS_NUM) {
449 omap3beagle_nand_data.cs = nandcs; 430 omap3beagle_nand_data.cs = nandcs;
450 omap3beagle_nand_data.gpmc_cs_baseaddr = (void *)
451 (gpmc_base_add + GPMC_CS0_BASE + nandcs * GPMC_CS_SIZE);
452 omap3beagle_nand_data.gpmc_baseaddr = (void *) (gpmc_base_add);
453 431
454 printk(KERN_INFO "Registering NAND on CS%d\n", nandcs); 432 printk(KERN_INFO "Registering NAND on CS%d\n", nandcs);
455 if (platform_device_register(&omap3beagle_nand_device) < 0) 433 if (gpmc_nand_init(&omap3beagle_nand_data) < 0)
456 printk(KERN_ERR "Unable to register NAND device\n"); 434 printk(KERN_ERR "Unable to register NAND device\n");
457 } 435 }
458} 436}
@@ -507,18 +485,12 @@ static void __init omap3_beagle_init(void)
507 beagle_display_init(); 485 beagle_display_init();
508} 486}
509 487
510static void __init omap3_beagle_map_io(void)
511{
512 omap2_set_globals_343x();
513 omap34xx_map_common_io();
514}
515
516MACHINE_START(OMAP3_BEAGLE, "OMAP3 Beagle Board") 488MACHINE_START(OMAP3_BEAGLE, "OMAP3 Beagle Board")
517 /* Maintainer: Syed Mohammed Khasim - http://beagleboard.org */ 489 /* Maintainer: Syed Mohammed Khasim - http://beagleboard.org */
518 .phys_io = 0x48000000, 490 .phys_io = 0x48000000,
519 .io_pg_offst = ((0xfa000000) >> 18) & 0xfffc, 491 .io_pg_offst = ((0xfa000000) >> 18) & 0xfffc,
520 .boot_params = 0x80000100, 492 .boot_params = 0x80000100,
521 .map_io = omap3_beagle_map_io, 493 .map_io = omap3_map_io,
522 .reserve = omap_reserve, 494 .reserve = omap_reserve,
523 .init_irq = omap3_beagle_init_irq, 495 .init_irq = omap3_beagle_init_irq,
524 .init_machine = omap3_beagle_init, 496 .init_machine = omap3_beagle_init,