aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2/board-flash.c
diff options
context:
space:
mode:
authorSukumar Ghorai <s-ghorai@ti.com>2011-01-28 05:12:03 -0500
committerTony Lindgren <tony@atomide.com>2011-02-17 18:32:52 -0500
commitd5ce2b6592c49935462cba7317fa67fe8ee474ec (patch)
tree5dac64a2ee28e08bd730efa2bb28d3f32e12fbca /arch/arm/mach-omap2/board-flash.c
parentdf7ffd317d36d36095c26bb57b3dd405274048e5 (diff)
omap3630: nand: fix device size to work in polled mode
zoom3 and 3630-sdp having the x16 nand device. This patch configure gpmc as x16 and select the currect function in driver for polled mode (without prefetch enable) transfer. Signed-off-by: Sukumar Ghorai <s-ghorai@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'arch/arm/mach-omap2/board-flash.c')
-rw-r--r--arch/arm/mach-omap2/board-flash.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/arch/arm/mach-omap2/board-flash.c b/arch/arm/mach-omap2/board-flash.c
index fd38c05bb47f..f6b72533c089 100644
--- a/arch/arm/mach-omap2/board-flash.c
+++ b/arch/arm/mach-omap2/board-flash.c
@@ -139,11 +139,13 @@ static struct omap_nand_platform_data board_nand_data = {
139}; 139};
140 140
141void 141void
142__init board_nand_init(struct mtd_partition *nand_parts, u8 nr_parts, u8 cs) 142__init board_nand_init(struct mtd_partition *nand_parts,
143 u8 nr_parts, u8 cs, int nand_type)
143{ 144{
144 board_nand_data.cs = cs; 145 board_nand_data.cs = cs;
145 board_nand_data.parts = nand_parts; 146 board_nand_data.parts = nand_parts;
146 board_nand_data.nr_parts = nr_parts; 147 board_nand_data.nr_parts = nr_parts;
148 board_nand_data.devsize = nand_type;
147 149
148 gpmc_nand_init(&board_nand_data); 150 gpmc_nand_init(&board_nand_data);
149} 151}
@@ -194,7 +196,7 @@ unmap:
194 * @return - void. 196 * @return - void.
195 */ 197 */
196void board_flash_init(struct flash_partitions partition_info[], 198void board_flash_init(struct flash_partitions partition_info[],
197 char chip_sel_board[][GPMC_CS_NUM]) 199 char chip_sel_board[][GPMC_CS_NUM], int nand_type)
198{ 200{
199 u8 cs = 0; 201 u8 cs = 0;
200 u8 norcs = GPMC_CS_NUM + 1; 202 u8 norcs = GPMC_CS_NUM + 1;
@@ -250,5 +252,5 @@ void board_flash_init(struct flash_partitions partition_info[],
250 "in GPMC\n"); 252 "in GPMC\n");
251 else 253 else
252 board_nand_init(partition_info[2].parts, 254 board_nand_init(partition_info[2].parts,
253 partition_info[2].nr_parts, nandcs); 255 partition_info[2].nr_parts, nandcs, nand_type);
254} 256}