Lines Matching full:partition

32     const MtdPartition *partition;  member
39 const MtdPartition *partition; member
186 mtd_mount_partition(const MtdPartition *partition, const char *mount_point, in mtd_mount_partition() argument
193 sprintf(devname, "/dev/block/mtdblock%d", partition->device_index); in mtd_mount_partition()
256 mtd_partition_info(const MtdPartition *partition, in mtd_partition_info() argument
260 //sprintf(mtddevname, "/dev/mtd/mtd%d", partition->device_index); in mtd_partition_info()
261 sprintf(mtddevname, "/dev/mtd%d", partition->device_index); in mtd_partition_info()
276 MtdReadContext *mtd_read_partition(const MtdPartition *partition) in mtd_read_partition() argument
281 ctx->buffer = malloc(partition->erase_size); in mtd_read_partition()
288 sprintf(mtddevname, "/dev/mtd%d", partition->device_index); in mtd_read_partition()
289 //sprintf(mtddevname, "/dev/mtd/mtd%d", partition->device_index); in mtd_read_partition()
297 ctx->partition = partition; in mtd_read_partition()
298 ctx->consumed = partition->erase_size; in mtd_read_partition()
302 // Seeks to a location in the partition. Don't mix with reads of
309 static int read_block(const MtdPartition *partition, int fd, char *data) in read_block() argument
319 ssize_t size = partition->erase_size; in read_block()
322 while (pos + size <= (int) partition->size) { in read_block()
343 pos += partition->erase_size; in read_block()
354 if (ctx->consumed < ctx->partition->erase_size) { in mtd_read_data()
355 size_t avail = ctx->partition->erase_size - ctx->consumed; in mtd_read_data()
363 while (ctx->consumed == ctx->partition->erase_size && in mtd_read_data()
364 len - read >= ctx->partition->erase_size) { in mtd_read_data()
365 if (read_block(ctx->partition, ctx->fd, data + read)) return -1; in mtd_read_data()
366 read += ctx->partition->erase_size; in mtd_read_data()
374 if (ctx->consumed == ctx->partition->erase_size && read < (int) len) { in mtd_read_data()
375 if (read_block(ctx->partition, ctx->fd, ctx->buffer)) return -1; in mtd_read_data()
390 MtdWriteContext *mtd_write_partition(const MtdPartition *partition) in mtd_write_partition() argument
399 ctx->buffer = malloc(partition->erase_size); in mtd_write_partition()
406 sprintf(mtddevname, "/dev/mtd%d", partition->device_index); in mtd_write_partition()
407 //sprintf(mtddevname, "/dev/mtd/mtd%d", partition->device_index); in mtd_write_partition()
415 ctx->partition = partition; in mtd_write_partition()
432 const MtdPartition *partition = ctx->partition; in write_block() local
438 ssize_t size = partition->erase_size; in write_block()
439 while (pos + size <= (int) partition->size) { in write_block()
447 pos += partition->erase_size; in write_block()
491 pos += partition->erase_size; in write_block()
504 if (ctx->stored > 0 || len - wrote < ctx->partition->erase_size) { in mtd_write_data()
505 size_t avail = ctx->partition->erase_size - ctx->stored; in mtd_write_data()
513 if (ctx->stored == ctx->partition->erase_size) { in mtd_write_data()
519 while (ctx->stored == 0 && len - wrote >= ctx->partition->erase_size) { in mtd_write_data()
521 wrote += ctx->partition->erase_size; in mtd_write_data()
532 size_t zero = ctx->partition->erase_size - ctx->stored; in mtd_erase_blocks()
541 const int total = (ctx->partition->size - pos) / ctx->partition->erase_size; in mtd_erase_blocks()
553 pos += ctx->partition->erase_size; in mtd_erase_blocks()
559 erase_info.length = ctx->partition->erase_size; in mtd_erase_blocks()
563 pos += ctx->partition->erase_size; in mtd_erase_blocks()
589 pos += ctx->partition->erase_size; in mtd_find_write_start()