diff options
-rw-r--r-- | fs/ubifs/Config.in | 21 | ||||
-rw-r--r-- | fs/ubifs/ubi.mk | 23 | ||||
-rw-r--r-- | fs/ubifs/ubinize.cfg | 7 |
3 files changed, 51 insertions, 0 deletions
diff --git a/fs/ubifs/Config.in b/fs/ubifs/Config.in index bcf409cad..a5ef5f2b2 100644 --- a/fs/ubifs/Config.in +++ b/fs/ubifs/Config.in @@ -77,3 +77,24 @@ config BR2_TARGET_ROOTFS_UBIFS_LZMA endchoice +config BR2_TARGET_ROOTFS_UBI + depends on BR2_TARGET_ROOTFS_UBIFS + bool "Embed into an UBI image" + help + Build an ubi image from the ubifs one (with ubinize). + +config BR2_TARGET_ROOTFS_UBI_PEBSIZE + hex "UBI physical erase block size" + depends on BR2_TARGET_ROOTFS_UBI + default 0x20000 + help + Tells ubinize the physical eraseblock size of the flash chip + the ubi image is created for. + +config BR2_TARGET_ROOTFS_UBI_SUBSIZE + int "UBI sub-page size" + depends on BR2_TARGET_ROOTFS_UBI + default 512 + help + Tells ubinize that the flash supports sub-pages and the sub-page + size. Use 0 if subpages are not supported on flash chip. diff --git a/fs/ubifs/ubi.mk b/fs/ubifs/ubi.mk new file mode 100644 index 000000000..c88e33639 --- /dev/null +++ b/fs/ubifs/ubi.mk @@ -0,0 +1,23 @@ +############################################################# +# +# Embed the ubifs image into an ubi one +# +############################################################# + +UBI_UBINIZE_OPTS := -m $(BR2_TARGET_ROOTFS_UBIFS_MINIOSIZE) +UBI_UBINIZE_OPTS += -p $(BR2_TARGET_ROOTFS_UBI_PEBSIZE) +ifneq ($(BR2_TARGET_ROOTFS_UBI_SUBSIZE),0) +UBI_UBINIZE_OPTS += -s $(BR2_TARGET_ROOTFS_UBI_SUBSIZE) +endif + +ROOTFS_UBI_DEPENDENCIES = rootfs-ubifs + +define ROOTFS_UBI_CMD + cp fs/ubifs/ubinize.cfg . ;\ + echo "image=$$@fs" \ + >> ./ubinize.cfg ;\ + $(HOST_DIR)/usr/sbin/ubinize -o $$@ $(UBI_UBINIZE_OPTS) ubinize.cfg ;\ + rm ubinize.cfg +endef + +$(eval $(call ROOTFS_TARGET,ubi)) diff --git a/fs/ubifs/ubinize.cfg b/fs/ubifs/ubinize.cfg new file mode 100644 index 000000000..65152714b --- /dev/null +++ b/fs/ubifs/ubinize.cfg @@ -0,0 +1,7 @@ +[ubifs] +mode=ubi +vol_id=0 +vol_type=dynamic +vol_name=rootfs +vol_alignment=1 +vol_flags=autoresize |