X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=include%2Fimage-sparse.h;h=0572dbd0a2832cfd1473b2497f764d340dfa6eba;hb=5fac11e6d5ab350429b8c8ddf47d3d3877ca89d1;hp=0382f5bd2639fecd498b7a2635ed5035381ee58d;hpb=98e73c834467ef6f1d3e9a8102745e16b3128ac1;p=platform%2Fkernel%2Fu-boot.git diff --git a/include/image-sparse.h b/include/image-sparse.h index 0382f5b..0572dbd 100644 --- a/include/image-sparse.h +++ b/include/image-sparse.h @@ -1,24 +1,31 @@ +/* SPDX-License-Identifier: GPL-2.0+ */ /* * Copyright 2014 Broadcom Corporation. - * - * SPDX-License-Identifier: GPL-2.0+ */ +#include #include #include #define ROUNDUP(x, y) (((x) + ((y) - 1)) & ~((y) - 1)) -typedef struct sparse_storage { - unsigned int block_sz; - unsigned int start; - unsigned int size; - const char *name; +struct sparse_storage { + lbaint_t blksz; + lbaint_t start; + lbaint_t size; + void *priv; - int (*write)(struct sparse_storage *storage, void *priv, - unsigned int offset, unsigned int size, - char *data); -} sparse_storage_t; + lbaint_t (*write)(struct sparse_storage *info, + lbaint_t blk, + lbaint_t blkcnt, + const void *buffer); + + lbaint_t (*reserve)(struct sparse_storage *info, + lbaint_t blk, + lbaint_t blkcnt); + + void (*mssg)(const char *str, char *response); +}; static inline int is_sparse_image(void *buf) { @@ -31,5 +38,5 @@ static inline int is_sparse_image(void *buf) return 0; } -int store_sparse_image(sparse_storage_t *storage, void *storage_priv, - unsigned int session_id, void *data); +int write_sparse_image(struct sparse_storage *info, const char *part_name, + void *data, char *response);