int dfu_read_medium_mmc(struct dfu_entity *dfu, u64 offset, void *buf, long *len) { int ret = -1; switch (dfu->layout) { case DFU_RAW_ADDR: ret = mmc_block_op(DFU_OP_READ, dfu, offset, buf, len); break; case DFU_FS_FAT: case DFU_FS_EXT4: ret = mmc_file_op(DFU_OP_READ, dfu, buf, len); break; default: printf("%s: Layout (%s) not (yet) supported!\n", __func__, dfu_get_layout(dfu->layout)); } return ret; }
static inline int mmc_block_read(struct dfu_entity *dfu, void *buf, long *len) { return mmc_block_op(DFU_OP_READ, dfu, buf, len); }
static inline int mmc_block_write(struct dfu_entity *dfu, void *buf, long *len) { return mmc_block_op(DFU_OP_WRITE, dfu, buf, len); }