diff options
author | Sukumar Ghorai <s-ghorai@ti.com> | 2010-07-09 10:27:48 -0400 |
---|---|---|
committer | Tony Lindgren <tony@atomide.com> | 2010-08-02 08:46:29 -0400 |
commit | 7e7eb4263ee1f041a9f1b48738b98ef99ef73995 (patch) | |
tree | fc6da62dd53f1e2b8ed152c19ec848a116bc8257 /arch/arm/mach-omap2 | |
parent | 13d6b73cf189945b7d20e749f9034329d227be6a (diff) |
omap3: add support for NAND on zoom2 board
This patch adds NAND support to ZOOM2 board.
Signed-off-by: Sukumar Ghorai <s-ghorai@ti.com>
Signed-off-by: Vimal Singh <vimalsingh@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'arch/arm/mach-omap2')
-rw-r--r-- | arch/arm/mach-omap2/Makefile | 1 | ||||
-rw-r--r-- | arch/arm/mach-omap2/board-zoom2.c | 43 | ||||
-rw-r--r-- | arch/arm/mach-omap2/include/mach/board-zoom.h | 6 |
3 files changed, 50 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile index 9abefccbce8d..3e6b4d9954b6 100644 --- a/arch/arm/mach-omap2/Makefile +++ b/arch/arm/mach-omap2/Makefile | |||
@@ -130,6 +130,7 @@ obj-$(CONFIG_MACH_NOKIA_RX51) += board-rx51.o \ | |||
130 | hsmmc.o | 130 | hsmmc.o |
131 | obj-$(CONFIG_MACH_OMAP_ZOOM2) += board-zoom2.o \ | 131 | obj-$(CONFIG_MACH_OMAP_ZOOM2) += board-zoom2.o \ |
132 | board-zoom-peripherals.o \ | 132 | board-zoom-peripherals.o \ |
133 | board-flash.o \ | ||
133 | hsmmc.o \ | 134 | hsmmc.o \ |
134 | board-zoom-debugboard.o | 135 | board-zoom-debugboard.o |
135 | obj-$(CONFIG_MACH_OMAP_ZOOM3) += board-zoom3.o \ | 136 | obj-$(CONFIG_MACH_OMAP_ZOOM3) += board-zoom3.o \ |
diff --git a/arch/arm/mach-omap2/board-zoom2.c b/arch/arm/mach-omap2/board-zoom2.c index 1520a2c14149..0eafae2f9181 100644 --- a/arch/arm/mach-omap2/board-zoom2.c +++ b/arch/arm/mach-omap2/board-zoom2.c | |||
@@ -90,10 +90,53 @@ static struct omap_board_mux board_mux[] __initdata = { | |||
90 | #define board_mux NULL | 90 | #define board_mux NULL |
91 | #endif | 91 | #endif |
92 | 92 | ||
93 | static struct mtd_partition zoom_nand_partitions[] = { | ||
94 | /* All the partition sizes are listed in terms of NAND block size */ | ||
95 | { | ||
96 | .name = "X-Loader-NAND", | ||
97 | .offset = 0, | ||
98 | .size = 4 * (64 * 2048), /* 512KB, 0x80000 */ | ||
99 | .mask_flags = MTD_WRITEABLE, /* force read-only */ | ||
100 | }, | ||
101 | { | ||
102 | .name = "U-Boot-NAND", | ||
103 | .offset = MTDPART_OFS_APPEND, /* Offset = 0x80000 */ | ||
104 | .size = 10 * (64 * 2048), /* 1.25MB, 0x140000 */ | ||
105 | .mask_flags = MTD_WRITEABLE, /* force read-only */ | ||
106 | }, | ||
107 | { | ||
108 | .name = "Boot Env-NAND", | ||
109 | .offset = MTDPART_OFS_APPEND, /* Offset = 0x1c0000 */ | ||
110 | .size = 2 * (64 * 2048), /* 256KB, 0x40000 */ | ||
111 | }, | ||
112 | { | ||
113 | .name = "Kernel-NAND", | ||
114 | .offset = MTDPART_OFS_APPEND, /* Offset = 0x0200000*/ | ||
115 | .size = 240 * (64 * 2048), /* 30M, 0x1E00000 */ | ||
116 | }, | ||
117 | { | ||
118 | .name = "system", | ||
119 | .offset = MTDPART_OFS_APPEND, /* Offset = 0x2000000 */ | ||
120 | .size = 3328 * (64 * 2048), /* 416M, 0x1A000000 */ | ||
121 | }, | ||
122 | { | ||
123 | .name = "userdata", | ||
124 | .offset = MTDPART_OFS_APPEND, /* Offset = 0x1C000000*/ | ||
125 | .size = 256 * (64 * 2048), /* 32M, 0x2000000 */ | ||
126 | }, | ||
127 | { | ||
128 | .name = "cache", | ||
129 | .offset = MTDPART_OFS_APPEND, /* Offset = 0x1E000000*/ | ||
130 | .size = 256 * (64 * 2048), /* 32M, 0x2000000 */ | ||
131 | }, | ||
132 | }; | ||
133 | |||
93 | static void __init omap_zoom2_init(void) | 134 | static void __init omap_zoom2_init(void) |
94 | { | 135 | { |
95 | omap3_mux_init(board_mux, OMAP_PACKAGE_CBB); | 136 | omap3_mux_init(board_mux, OMAP_PACKAGE_CBB); |
96 | zoom_peripherals_init(); | 137 | zoom_peripherals_init(); |
138 | board_nand_init(zoom_nand_partitions, | ||
139 | ARRAY_SIZE(zoom_nand_partitions), ZOOM_NAND_CS); | ||
97 | zoom_debugboard_init(); | 140 | zoom_debugboard_init(); |
98 | } | 141 | } |
99 | 142 | ||
diff --git a/arch/arm/mach-omap2/include/mach/board-zoom.h b/arch/arm/mach-omap2/include/mach/board-zoom.h index c93b29e21b78..3af69d2c3dcd 100644 --- a/arch/arm/mach-omap2/include/mach/board-zoom.h +++ b/arch/arm/mach-omap2/include/mach/board-zoom.h | |||
@@ -1,5 +1,11 @@ | |||
1 | /* | 1 | /* |
2 | * Defines for zoom boards | 2 | * Defines for zoom boards |
3 | */ | 3 | */ |
4 | #include <linux/mtd/mtd.h> | ||
5 | #include <linux/mtd/partitions.h> | ||
6 | |||
7 | #define ZOOM_NAND_CS 0 | ||
8 | |||
9 | extern void __init board_nand_init(struct mtd_partition *, u8 nr_parts, u8 cs); | ||
4 | extern int __init zoom_debugboard_init(void); | 10 | extern int __init zoom_debugboard_init(void); |
5 | extern void __init zoom_peripherals_init(void); | 11 | extern void __init zoom_peripherals_init(void); |