diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2020-11-10 15:07:30 +0100 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2020-11-10 15:07:30 +0100 |
commit | e94ceec83fe41af8dc904d0851570b0af1ff40ec (patch) | |
tree | 21f652fb7e8ac8c855934fd831af998106c69e1f /lib | |
parent | 4b689ab6bccaf4fa65f71644d1ca4c9d8358385a (diff) | |
parent | 7a8def6214adf1bae8c34ab7807ea9953de7d579 (diff) | |
download | barebox-e94ceec83fe41af8dc904d0851570b0af1ff40ec.tar.gz barebox-e94ceec83fe41af8dc904d0851570b0af1ff40ec.tar.xz |
Merge branch 'for-next/imd-checksum'
Diffstat (limited to 'lib')
-rw-r--r-- | lib/bootstrap/devfs.c | 11 | ||||
-rw-r--r-- | lib/bootstrap/disk.c | 5 |
2 files changed, 11 insertions, 5 deletions
diff --git a/lib/bootstrap/devfs.c b/lib/bootstrap/devfs.c index 6a3dd76cdd..6d28b1cb4d 100644 --- a/lib/bootstrap/devfs.c +++ b/lib/bootstrap/devfs.c @@ -80,8 +80,8 @@ static unsigned int get_image_size(void *head) } #endif -void* bootstrap_read_devfs(const char *devname, bool use_bb, int offset, - int default_size, int max_size) +void* bootstrap_read_devfs(char *devname, bool use_bb, int offset, + int default_size, int max_size, size_t *bufsize) { int ret; int size = 0; @@ -133,10 +133,13 @@ void* bootstrap_read_devfs(const char *devname, bool use_bb, int offset, ret = cdev_read(cdev, to, size, 0, 0); cdev_close(cdev); - if (ret != size) + if (ret != size) { bootstrap_err("%s: failed to read from %s\n", devname, partname); - else + } else { result = to; + if (bufsize) + *bufsize = size; + } free_memory: free(header); diff --git a/lib/bootstrap/disk.c b/lib/bootstrap/disk.c index fd016166e6..ed8b1aa407 100644 --- a/lib/bootstrap/disk.c +++ b/lib/bootstrap/disk.c @@ -14,7 +14,7 @@ #include <libfile.h> #include <bootstrap.h> -void* bootstrap_read_disk(const char *dev, const char *fstype) +void* bootstrap_read_disk(const char *dev, char *fstype, size_t *bufsize) { int ret; void *buf; @@ -34,5 +34,8 @@ void* bootstrap_read_disk(const char *dev, const char *fstype) return NULL; } + if (bufsize) + *bufsize = len; + return buf; } |