Commit f2bf06fd authored by Julien Boibessot's avatar Julien Boibessot Committed by Peter Korsgaard
Browse files

ubifs: Add UBI image generation support.

UBI images are generated from UBIFS one (with ubinize tool) and are used by
bootloaders (eg U-Boot) to write UBIFS images directly on bare NAND FLASH
(see http://www.linux-mtd.infradead.org/faq/ubi.html

).

[Peter: tweak help text]
Signed-off-by: default avatarJulien Boibessot <julien.boibessot@armadeus.com>
Signed-off-by: default avatarNicolas Colombain <nicolas.colombain@armadeus.com>
Acked-by: default avatarThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: default avatarPeter Korsgaard <jacmet@sunsite.dk>
parent 8497c46a
Loading
Loading
Loading
Loading
+21 −0
Original line number Diff line number Diff line
@@ -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.

fs/ubifs/ubi.mk

0 → 100644
+23 −0
Original line number Diff line number Diff line
#############################################################
#
# 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))

fs/ubifs/ubinize.cfg

0 → 100644
+7 −0
Original line number Diff line number Diff line
[ubifs]
mode=ubi
vol_id=0
vol_type=dynamic
vol_name=rootfs
vol_alignment=1
vol_flags=autoresize