[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>
This commit is contained in:
@@ -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) {
|
/* register our partition */
|
||||||
/* store the object pointer (caller may or may not register it*/
|
add_mtd_device(&slave->mtd);
|
||||||
*part->mtdp = &slave->mtd;
|
|
||||||
slave->registered = 0;
|
|
||||||
} else {
|
|
||||||
/* register our partition */
|
|
||||||
add_mtd_device(&slave->mtd);
|
|
||||||
slave->registered = 1;
|
|
||||||
}
|
|
||||||
return slave;
|
return slave;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -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)
|
||||||
|
Reference in New Issue
Block a user