Browse Source

mxc_nand: add support for platform defined partitions

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Baruch Siach 15 years ago
parent
commit
cce02464dd
2 changed files with 6 additions and 0 deletions
  1. 4 0
      arch/arm/plat-mxc/include/mach/mxc_nand.h
  2. 2 0
      drivers/mtd/nand/mxc_nand.c

+ 4 - 0
arch/arm/plat-mxc/include/mach/mxc_nand.h

@@ -20,9 +20,13 @@
 #ifndef __ASM_ARCH_NAND_H
 #define __ASM_ARCH_NAND_H
 
+#include <linux/mtd/partitions.h>
+
 struct mxc_nand_platform_data {
 	int width;	/* data bus width in bytes */
 	int hw_ecc:1;	/* 0 if supress hardware ECC */
 	int flash_bbt:1; /* set to 1 to use a flash based bbt */
+	struct mtd_partition *parts;	/* partition table */
+	int nr_parts;			/* size of parts */
 };
 #endif /* __ASM_ARCH_NAND_H */

+ 2 - 0
drivers/mtd/nand/mxc_nand.c

@@ -832,6 +832,8 @@ static int __init mxcnd_probe(struct platform_device *pdev)
 	    parse_mtd_partitions(mtd, part_probes, &host->parts, 0);
 	if (nr_parts > 0)
 		add_mtd_partitions(mtd, host->parts, nr_parts);
+	else if (pdata->parts)
+		add_mtd_partitions(mtd, pdata->parts, pdata->nr_parts);
 	else
 #endif
 	{