diff options
Diffstat (limited to 'arch/arm/mach-omap2/board-ldp.c')
-rw-r--r-- | arch/arm/mach-omap2/board-ldp.c | 43 |
1 files changed, 36 insertions, 7 deletions
diff --git a/arch/arm/mach-omap2/board-ldp.c b/arch/arm/mach-omap2/board-ldp.c index 9cd2669113e4..00d9b13b01c5 100644 --- a/arch/arm/mach-omap2/board-ldp.c +++ b/arch/arm/mach-omap2/board-ldp.c | |||
@@ -38,6 +38,7 @@ | |||
38 | #include <plat/board.h> | 38 | #include <plat/board.h> |
39 | #include <plat/common.h> | 39 | #include <plat/common.h> |
40 | #include <plat/gpmc.h> | 40 | #include <plat/gpmc.h> |
41 | #include <mach/board-zoom.h> | ||
41 | 42 | ||
42 | #include <asm/delay.h> | 43 | #include <asm/delay.h> |
43 | #include <plat/control.h> | 44 | #include <plat/control.h> |
@@ -388,6 +389,38 @@ static struct omap_musb_board_data musb_board_data = { | |||
388 | .power = 100, | 389 | .power = 100, |
389 | }; | 390 | }; |
390 | 391 | ||
392 | static struct mtd_partition ldp_nand_partitions[] = { | ||
393 | /* All the partition sizes are listed in terms of NAND block size */ | ||
394 | { | ||
395 | .name = "X-Loader-NAND", | ||
396 | .offset = 0, | ||
397 | .size = 4 * (64 * 2048), /* 512KB, 0x80000 */ | ||
398 | .mask_flags = MTD_WRITEABLE, /* force read-only */ | ||
399 | }, | ||
400 | { | ||
401 | .name = "U-Boot-NAND", | ||
402 | .offset = MTDPART_OFS_APPEND, /* Offset = 0x80000 */ | ||
403 | .size = 10 * (64 * 2048), /* 1.25MB, 0x140000 */ | ||
404 | .mask_flags = MTD_WRITEABLE, /* force read-only */ | ||
405 | }, | ||
406 | { | ||
407 | .name = "Boot Env-NAND", | ||
408 | .offset = MTDPART_OFS_APPEND, /* Offset = 0x1c0000 */ | ||
409 | .size = 2 * (64 * 2048), /* 256KB, 0x40000 */ | ||
410 | }, | ||
411 | { | ||
412 | .name = "Kernel-NAND", | ||
413 | .offset = MTDPART_OFS_APPEND, /* Offset = 0x0200000*/ | ||
414 | .size = 240 * (64 * 2048), /* 30M, 0x1E00000 */ | ||
415 | }, | ||
416 | { | ||
417 | .name = "File System - NAND", | ||
418 | .offset = MTDPART_OFS_APPEND, /* Offset = 0x2000000 */ | ||
419 | .size = MTDPART_SIZ_FULL, /* 96MB, 0x6000000 */ | ||
420 | }, | ||
421 | |||
422 | }; | ||
423 | |||
391 | static void __init omap_ldp_init(void) | 424 | static void __init omap_ldp_init(void) |
392 | { | 425 | { |
393 | omap3_mux_init(board_mux, OMAP_PACKAGE_CBB); | 426 | omap3_mux_init(board_mux, OMAP_PACKAGE_CBB); |
@@ -400,23 +433,19 @@ static void __init omap_ldp_init(void) | |||
400 | ads7846_dev_init(); | 433 | ads7846_dev_init(); |
401 | omap_serial_init(); | 434 | omap_serial_init(); |
402 | usb_musb_init(&musb_board_data); | 435 | usb_musb_init(&musb_board_data); |
436 | board_nand_init(ldp_nand_partitions, | ||
437 | ARRAY_SIZE(ldp_nand_partitions), ZOOM_NAND_CS); | ||
403 | 438 | ||
404 | omap2_hsmmc_init(mmc); | 439 | omap2_hsmmc_init(mmc); |
405 | /* link regulators to MMC adapters */ | 440 | /* link regulators to MMC adapters */ |
406 | ldp_vmmc1_supply.dev = mmc[0].dev; | 441 | ldp_vmmc1_supply.dev = mmc[0].dev; |
407 | } | 442 | } |
408 | 443 | ||
409 | static void __init omap_ldp_map_io(void) | ||
410 | { | ||
411 | omap2_set_globals_343x(); | ||
412 | omap34xx_map_common_io(); | ||
413 | } | ||
414 | |||
415 | MACHINE_START(OMAP_LDP, "OMAP LDP board") | 444 | MACHINE_START(OMAP_LDP, "OMAP LDP board") |
416 | .phys_io = 0x48000000, | 445 | .phys_io = 0x48000000, |
417 | .io_pg_offst = ((0xfa000000) >> 18) & 0xfffc, | 446 | .io_pg_offst = ((0xfa000000) >> 18) & 0xfffc, |
418 | .boot_params = 0x80000100, | 447 | .boot_params = 0x80000100, |
419 | .map_io = omap_ldp_map_io, | 448 | .map_io = omap3_map_io, |
420 | .reserve = omap_reserve, | 449 | .reserve = omap_reserve, |
421 | .init_irq = omap_ldp_init_irq, | 450 | .init_irq = omap_ldp_init_irq, |
422 | .init_machine = omap_ldp_init, | 451 | .init_machine = omap_ldp_init, |