浏览代码

[MTD] Remove option for add_mtd_partitions() to not register partitions.

This breaks the dilnetpc map driver, but it could be fixed not to use
that option. We want to simplify the partition handling, and this is a
step towards that.

Remove superfluous 'index' field from private struct mtd_part too, while
we're at it.

Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
David Woodhouse 16 年之前
父节点
当前提交
b90cf6681f
共有 2 个文件被更改,包括 4 次插入15 次删除
  1. 4 14
      drivers/mtd/mtdpart.c
  2. 0 1
      include/linux/mtd/partitions.h

+ 4 - 14
drivers/mtd/mtdpart.c

@@ -27,9 +27,7 @@ struct mtd_part {
 	struct mtd_info mtd;
 	struct mtd_info mtd;
 	struct mtd_info *master;
 	struct mtd_info *master;
 	uint64_t offset;
 	uint64_t offset;
-	int index;
 	struct list_head list;
 	struct list_head list;
-	int registered;
 };
 };
 
 
 /*
 /*
@@ -321,8 +319,7 @@ int del_mtd_partitions(struct mtd_info *master)
 	list_for_each_entry_safe(slave, next, &mtd_partitions, list)
 	list_for_each_entry_safe(slave, next, &mtd_partitions, list)
 		if (slave->master == master) {
 		if (slave->master == master) {
 			list_del(&slave->list);
 			list_del(&slave->list);
-			if (slave->registered)
-				del_mtd_device(&slave->mtd);
+			del_mtd_device(&slave->mtd);
 			kfree(slave);
 			kfree(slave);
 		}
 		}
 
 
@@ -412,7 +409,6 @@ static struct mtd_part *add_one_partition(struct mtd_info *master,
 	slave->mtd.erase = part_erase;
 	slave->mtd.erase = part_erase;
 	slave->master = master;
 	slave->master = master;
 	slave->offset = part->offset;
 	slave->offset = part->offset;
-	slave->index = partno;
 
 
 	if (slave->offset == MTDPART_OFS_APPEND)
 	if (slave->offset == MTDPART_OFS_APPEND)
 		slave->offset = cur_offset;
 		slave->offset = cur_offset;
@@ -500,15 +496,9 @@ static struct mtd_part *add_one_partition(struct mtd_info *master,
 	}
 	}
 
 
 out_register:
 out_register:
-	if (part->mtdp) {
-		/* store the object pointer (caller may or may not register it*/
-		*part->mtdp = &slave->mtd;
-		slave->registered = 0;
-	} else {
-		/* register our partition */
-		add_mtd_device(&slave->mtd);
-		slave->registered = 1;
-	}
+	/* register our partition */
+	add_mtd_device(&slave->mtd);
+
 	return slave;
 	return slave;
 }
 }
 
 

+ 0 - 1
include/linux/mtd/partitions.h

@@ -40,7 +40,6 @@ struct mtd_partition {
 	uint64_t offset;		/* offset within the master MTD space */
 	uint64_t offset;		/* offset within the master MTD space */
 	uint32_t mask_flags;		/* master MTD flags to mask out for this partition */
 	uint32_t mask_flags;		/* master MTD flags to mask out for this partition */
 	struct nand_ecclayout *ecclayout;	/* out of band layout for this partition (NAND only)*/
 	struct nand_ecclayout *ecclayout;	/* out of band layout for this partition (NAND only)*/
-	struct mtd_info **mtdp;		/* pointer to store the MTD object */
 };
 };
 
 
 #define MTDPART_OFS_NXTBLK	(-2)
 #define MTDPART_OFS_NXTBLK	(-2)