aboutsummaryrefslogtreecommitdiff
path: root/libflash/libffs.c
diff options
context:
space:
mode:
authorCyril Bur <cyril.bur@au1.ibm.com>2018-03-15 16:58:16 +1100
committerStewart Smith <stewart@linux.ibm.com>2018-04-09 03:45:23 -0500
commit07426f41d24dc8006ede0b544ade3c1d72bae905 (patch)
treeb6c79b2a8500c423a141d40f87bd88607e90ff89 /libflash/libffs.c
parent2b9ae3ab9e53f0e23c4092addbc1421afb63bff7 (diff)
downloadskiboot-07426f41d24dc8006ede0b544ade3c1d72bae905.zip
skiboot-07426f41d24dc8006ede0b544ade3c1d72bae905.tar.gz
skiboot-07426f41d24dc8006ede0b544ade3c1d72bae905.tar.bz2
libflash/libffs: Add setter for a partitions actual size
Signed-off-by: Cyril Bur <cyril.bur@au1.ibm.com> Signed-off-by: Stewart Smith <stewart@linux.ibm.com>
Diffstat (limited to 'libflash/libffs.c')
-rw-r--r--libflash/libffs.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/libflash/libffs.c b/libflash/libffs.c
index 9a80a56..abc6138 100644
--- a/libflash/libffs.c
+++ b/libflash/libffs.c
@@ -856,6 +856,19 @@ int ffs_entry_new(const char *name, uint32_t base, uint32_t size, struct ffs_ent
return 0;
}
+int ffs_entry_set_act_size(struct ffs_entry *ent, uint32_t actual_size)
+{
+ if (!ent)
+ return -1;
+
+ if (actual_size > ent->size)
+ return FFS_ERR_BAD_PART_SIZE;
+
+ ent->actual = actual_size;
+
+ return 0;
+}
+
int ffs_hdr_new(uint32_t block_size, uint32_t block_count, struct ffs_hdr **r)
{
struct ffs_hdr *ret;