--- /dev/null
+config BR2_TARGET_ROOTFS_UBIFS
+ bool "ubifs root filesystem"
+ help
+ Build a ubifs root filesystem
+
+if BR2_TARGET_ROOTFS_UBIFS
+
+config BR2_TARGET_ROOTFS_UBIFS_LEBSIZE
+ hex "logical eraseblock size"
+ default 0x1f800
+ help
+ Logical eraseblock (LEB) size. The value provided here is
+ passed to the -e/--leb-size option of mkfs.ubifs.
+
+config BR2_TARGET_ROOTFS_UBIFS_MINIOSIZE
+ hex "minimum I/O unit size"
+ default 0x800
+ help
+ Minimum I/O unit size. The value provided here is passed
+ to the -m/--min-io-size option of mkfs.ubifs/ubinize.
+
+config BR2_TARGET_ROOTFS_UBIFS_MAXLEBCNT
+ int "maximum logical eraseblock count"
+ default 2048
+ help
+ Maximum logical eraseblock (LEB) count. The value provided
+ here is passed to the -c/--max-leb-cnt option of mkfs.ubifs.
+
+choice
+ prompt "ubifs runtime compression"
+ default BR2_TARGET_ROOTFS_UBIFS_RT_LZO
+ help
+ Select which compression format to use at run-time within
+ the ubifs file system. The choice made here is passed to
+ the -x/--compr option of mkfs.ubifs
+
+config BR2_TARGET_ROOTFS_UBIFS_RT_NONE
+ bool "no compression"
+ help
+ Don't use run-time compression.
+
+config BR2_TARGET_ROOTFS_UBIFS_RT_ZLIB
+ bool "gzip"
+ help
+ Use zlib compression at run-time.
+
+config BR2_TARGET_ROOTFS_UBIFS_RT_LZO
+ bool "lzo"
+ help
+ Use lzo compression at run-time.
+
+endchoice
+
+choice
+ prompt "Compression method"
+ default BR2_TARGET_ROOTFS_UBIFS_NONE
+ help
+ Select which compression format to compress the final image
+ into.
+
+config BR2_TARGET_ROOTFS_UBIFS_NONE
+ bool "no compression"
+ help
+ Do not compress the ubifs filesystem.
+
+config BR2_TARGET_ROOTFS_UBIFS_GZIP
+ bool "gzip"
+ help
+ Do compress the ubifs filesystem with gzip.
+
+config BR2_TARGET_ROOTFS_UBIFS_BZIP2
+ bool "bzip2"
+ help
+ Do compress the ubifs filesystem with bzip2.
+
+config BR2_TARGET_ROOTFS_UBIFS_LZMA
+ bool "lzma"
+ help
+ Do compress the ubifs filesystem with lzma.
+
+config BR2_TARGET_ROOTFS_UBIFS_LZO
+ bool "lzo"
+ help
+ Do compress the ubifs filesystem with lzop.
+
+config BR2_TARGET_ROOTFS_UBIFS_XZ
+ bool "xz"
+ help
+ Do compress the ubifs filesystem with xz.
+
+endchoice
+
+config BR2_TARGET_ROOTFS_UBIFS_OPTS
+ string "Additional mkfs.ubifs options"
+ help
+ Any additional mkfs.ubifs options you may want to include.
+
+config BR2_TARGET_ROOTFS_UBI
+ bool "Embed into an UBI image"
+ help
+ Build an ubi image from the ubifs one (with ubinize).
+
+if BR2_TARGET_ROOTFS_UBI
+
+config BR2_TARGET_ROOTFS_UBI_PEBSIZE
+ hex "physical eraseblock size"
+ default 0x20000
+ help
+ Tells ubinize the physical eraseblock (PEB) size of the
+ flash chip the ubi image is created for. The value provided
+ here is passed to the -p/--peb-size option of ubinize.
+
+config BR2_TARGET_ROOTFS_UBI_SUBSIZE
+ int "sub-page size"
+ default 512
+ help
+ Tells ubinize that the flash supports sub-pages and the sub-page
+ size. Use 0 if sub-pages are not supported on flash chip.
+ The value provided here is passed to the -s/--sub-page-size
+ 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
+ string "Additional ubinize options"
+ help
+ Any additional ubinize options you may want to include.
+
+endif # BR2_TARGET_ROOTFS_UBI
+
+endif # BR2_TARGET_ROOTFS_UBIFS