Lines Matching full:parts
23 * <size> and <offset> can be specified such that the parts are out of order
26 * The parts are assigned MTD numbers in the order they are specified in the
63 struct mtd_partition *parts; member
89 struct mtd_partition *parts; in newpart() local
169 parts = newpart(s + 1, &s, num_parts, this_part + 1, in newpart()
171 if (IS_ERR(parts)) in newpart()
172 return parts; in newpart()
181 parts = kzalloc(alloc_size, GFP_KERNEL); in newpart()
182 if (!parts) in newpart()
184 extra_mem = (unsigned char *)(parts + *num_parts); in newpart()
191 parts[this_part].size = size; in newpart()
192 parts[this_part].offset = offset; in newpart()
193 parts[this_part].mask_flags = mask_flags; in newpart()
194 parts[this_part].add_flags = add_flags; in newpart()
199 parts[this_part].name = extra_mem; in newpart()
203 this_part, parts[this_part].name, parts[this_part].offset, in newpart()
204 parts[this_part].size, parts[this_part].mask_flags)); in newpart()
214 return parts; in newpart()
227 struct mtd_partition *parts; in mtdpart_setup_real() local
264 parts = newpart(p + 1, /* cmdline */ in mtdpart_setup_real()
266 &num_parts, /* out: number of parts */ in mtdpart_setup_real()
271 if (IS_ERR(parts)) { in mtdpart_setup_real()
279 return PTR_ERR(parts); in mtdpart_setup_real()
286 this_mtd->parts = parts; in mtdpart_setup_real()
350 if (part->parts[i].offset == OFFSET_CONTINUOUS) in parse_cmdline_partitions()
351 part->parts[i].offset = offset; in parse_cmdline_partitions()
353 offset = part->parts[i].offset; in parse_cmdline_partitions()
355 if (part->parts[i].size == SIZE_REMAINING) in parse_cmdline_partitions()
356 part->parts[i].size = master->size - offset; in parse_cmdline_partitions()
358 if (offset + part->parts[i].size > master->size) { in parse_cmdline_partitions()
361 part->parts[i].size = master->size - offset; in parse_cmdline_partitions()
363 offset += part->parts[i].size; in parse_cmdline_partitions()
365 if (part->parts[i].size == 0) { in parse_cmdline_partitions()
369 memmove(&part->parts[i], &part->parts[i + 1], in parse_cmdline_partitions()
370 sizeof(*part->parts) * (part->num_parts - i)); in parse_cmdline_partitions()
375 *pparts = kmemdup(part->parts, sizeof(*part->parts) * part->num_parts, in parse_cmdline_partitions()