fs/ubi: add option to use custom ubinize config file
By default, the UBI FS target creates a ubinize configuration file on-the-fly, for a single volume. Add an option to specify a custom config file. E.g., one might want to deploy a system with a volume for the built ubifs image, a volume for a future upgrade image, and a volume for user data. Signed-off-by: Danomi Manchego <danomimanchego123@gmail.com> Reviewed-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit is contained in:
parent
d517415bcd
commit
74a0f963ed
|
@ -119,6 +119,26 @@ config BR2_TARGET_ROOTFS_UBI_SUBSIZE
|
||||||
The value provided here is passed to the -s/--sub-page-size
|
The value provided here is passed to the -s/--sub-page-size
|
||||||
option of ubinize.
|
option of ubinize.
|
||||||
|
|
||||||
|
config BR2_TARGET_ROOTFS_UBI_USE_CUSTOM_CONFIG
|
||||||
|
bool "Use custom config file"
|
||||||
|
help
|
||||||
|
Select this option to use a custom ubinize configuration file,
|
||||||
|
rather than the default configuration used by Buildroot (which
|
||||||
|
defines a single dynamic volume marked as auto-resize). Passing
|
||||||
|
a custom ubinize configuration file allows you to create several
|
||||||
|
volumes, specify volume types, etc.
|
||||||
|
|
||||||
|
As a convenience, buildroot replaces the string
|
||||||
|
"BR2_ROOTFS_UBIFS_PATH" with the path to the built ubifs file.
|
||||||
|
So the volume defined for the root filesystem can specify the
|
||||||
|
image path as: image=BR2_ROOTFS_UBIFS_PATH
|
||||||
|
|
||||||
|
config BR2_TARGET_ROOTFS_UBI_CUSTOM_CONFIG_FILE
|
||||||
|
string "Configuration file path"
|
||||||
|
depends on BR2_TARGET_ROOTFS_UBI_USE_CUSTOM_CONFIG
|
||||||
|
help
|
||||||
|
Path to the ubinize configuration file.
|
||||||
|
|
||||||
config BR2_TARGET_ROOTFS_UBI_OPTS
|
config BR2_TARGET_ROOTFS_UBI_OPTS
|
||||||
string "Additional ubinize options"
|
string "Additional ubinize options"
|
||||||
help
|
help
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
################################################################################
|
################################################################################
|
||||||
#
|
#
|
||||||
# Embed the ubifs image into an ubi one
|
# Embed the ubifs image into an ubi image
|
||||||
#
|
#
|
||||||
################################################################################
|
################################################################################
|
||||||
|
|
||||||
|
@ -14,12 +14,17 @@ UBI_UBINIZE_OPTS += $(call qstrip,$(BR2_TARGET_ROOTFS_UBI_OPTS))
|
||||||
|
|
||||||
ROOTFS_UBI_DEPENDENCIES = rootfs-ubifs
|
ROOTFS_UBI_DEPENDENCIES = rootfs-ubifs
|
||||||
|
|
||||||
|
ifeq ($(BR2_TARGET_ROOTFS_UBI_USE_CUSTOM_CONFIG),y)
|
||||||
|
UBINIZE_CONFIG_FILE_PATH = $(call qstrip,$(BR2_TARGET_ROOTFS_UBI_CUSTOM_CONFIG_FILE))
|
||||||
|
else
|
||||||
|
UBINIZE_CONFIG_FILE_PATH = fs/ubifs/ubinize.cfg
|
||||||
|
endif
|
||||||
|
|
||||||
define ROOTFS_UBI_CMD
|
define ROOTFS_UBI_CMD
|
||||||
cp fs/ubifs/ubinize.cfg . ;\
|
$(INSTALL) -m 0644 $(UBINIZE_CONFIG_FILE_PATH) $(BUILD_DIR)/ubinize.cfg ;\
|
||||||
echo "image=$@fs" \
|
$(SED) 's;BR2_ROOTFS_UBIFS_PATH;$@fs;' $(BUILD_DIR)/ubinize.cfg ;\
|
||||||
>> ./ubinize.cfg ;\
|
$(HOST_DIR)/usr/sbin/ubinize -o $@ $(UBI_UBINIZE_OPTS) $(BUILD_DIR)/ubinize.cfg ;\
|
||||||
$(HOST_DIR)/usr/sbin/ubinize -o $@ $(UBI_UBINIZE_OPTS) ubinize.cfg ;\
|
rm $(BUILD_DIR)/ubinize.cfg
|
||||||
rm ubinize.cfg
|
|
||||||
endef
|
endef
|
||||||
|
|
||||||
$(eval $(call ROOTFS_TARGET,ubi))
|
$(eval $(call ROOTFS_TARGET,ubi))
|
||||||
|
|
|
@ -5,3 +5,4 @@ vol_type=dynamic
|
||||||
vol_name=rootfs
|
vol_name=rootfs
|
||||||
vol_alignment=1
|
vol_alignment=1
|
||||||
vol_flags=autoresize
|
vol_flags=autoresize
|
||||||
|
image=BR2_ROOTFS_UBIFS_PATH
|
||||||
|
|
Loading…
Reference in New Issue
Block a user