aboutsummaryrefslogtreecommitdiff
path: root/include/configs
diff options
context:
space:
mode:
authorPali Rohár2022-05-31 10:32:36 +0200
committerTom Rini2022-07-08 09:05:47 -0400
commite6ca148104fe66ccc5991b06a88f431c9537c366 (patch)
treef087cfca26d507a476099414b3eb5e0e439c445f /include/configs
parent69ca709d0fb001851f443b0b744c6d65bb6c22c1 (diff)
distroboot: Fix ubifs
Fix multiple issues in ubifs distroboot code: U-Boot supports attaching only one MTD device as UBI at the time. So always call 'ubifsmount ubi0:${bootubivol}' for mounting UBI volume ${bootubivol}. Usage of 'ubi${devnum}' is incorrect as 'ubi part' command attach MTD device always as UBI device ubi0. Set distroboot ${bootfstype} variable to ubifs in ubifs_boot command. Distroboot scripts require ${bootfstype} variable to be properly set and it is already set for all other boot types. Set distroboot ${distro_bootpart} variable to ${bootubivol} value. UBI device does not have partitions, but has volumes. Distroboot scripts require something to be set in ${distro_bootpart} variable, so set it to the UBI volume which is currently mounted by ubifs. Set distroboot ${devnum} variable to fixed string "ubi0". ubifs code differs from the other partition code that it requires "ubi" prefix before number. Explicitly unmount ubifs volume after loading all data from it. This allows to detach UBI device from MTD device. Move definition of MTD device with UBI and UBI volume with ubifs filesystem from global env variables ${bootubipart} and ${bootubivol} into the distroboot "func" macro, defined in board include config files. UBIFS distroboot macros then set ${bootubipart} and ${bootubivol} local variables for compatibility with existing distroboot scripts. This last change allows to define more UBIFS target devices and make it clear what is boot MTD/UBI device. All board include config files are adjusted to use this new scheme of specifying boot MTD/UBI device. Signed-off-by: Pali Rohár <pali@kernel.org> Acked-by: Frieder Schrempf <frieder.schrempf@kontron.de>
Diffstat (limited to 'include/configs')
-rw-r--r--include/configs/am335x_guardian.h3
-rw-r--r--include/configs/colibri-imx6ull.h1
-rw-r--r--include/configs/colibri_imx7.h1
-rw-r--r--include/configs/kontron-sl-mx6ul.h2
-rw-r--r--include/configs/mys_6ulx.h2
-rw-r--r--include/configs/npi_imx6ull.h2
-rw-r--r--include/configs/omap3_beagle.h4
-rw-r--r--include/configs/omap3_evm.h4
-rw-r--r--include/configs/pcl063.h2
-rw-r--r--include/configs/stm32mp15_common.h2
-rw-r--r--include/configs/uniphier.h2
11 files changed, 9 insertions, 16 deletions
diff --git a/include/configs/am335x_guardian.h b/include/configs/am335x_guardian.h
index 7a9928fba74..7fa1847c1fc 100644
--- a/include/configs/am335x_guardian.h
+++ b/include/configs/am335x_guardian.h
@@ -27,7 +27,7 @@
"ramdisk_addr_r=0x88080000\0" \
#define BOOT_TARGET_DEVICES(func) \
- func(UBIFS, ubifs, 0)
+ func(UBIFS, ubifs, 0, UBI, rootfs)
#define AM335XX_BOARD_FDTFILE "fdtfile=" CONFIG_DEFAULT_DEVICE_TREE ".dtb\0"
@@ -51,7 +51,6 @@
BOOTENV \
GUARDIAN_DEFAULT_PROD_ENV \
"backlight_brightness=50\0" \
- "bootubivol=rootfs\0" \
"distro_bootcmd=" \
"setenv rootflags \"bulk_read,chk_data_crc\"; " \
"setenv ethact usb_ether; " \
diff --git a/include/configs/colibri-imx6ull.h b/include/configs/colibri-imx6ull.h
index 528c7c98d23..04cde9530ad 100644
--- a/include/configs/colibri-imx6ull.h
+++ b/include/configs/colibri-imx6ull.h
@@ -90,7 +90,6 @@
UBI_BOOTCMD \
UBOOT_UPDATE \
"boot_script_dhcp=boot.scr\0" \
- "bootubipart=ubi\0" \
"console=ttymxc0\0" \
"defargs=user_debug=30\0" \
"fdt_board=eval-v3\0" \
diff --git a/include/configs/colibri_imx7.h b/include/configs/colibri_imx7.h
index 8a6536eec89..9543e0233ee 100644
--- a/include/configs/colibri_imx7.h
+++ b/include/configs/colibri_imx7.h
@@ -130,7 +130,6 @@
UBOOT_UPDATE \
"boot_file=zImage\0" \
"boot_script_dhcp=boot.scr\0" \
- "bootubipart=ubi\0" \
"console=ttymxc0\0" \
"defargs=\0" \
"fdt_board=eval-v3\0" \
diff --git a/include/configs/kontron-sl-mx6ul.h b/include/configs/kontron-sl-mx6ul.h
index 512cef09f80..7aac5d3f5a1 100644
--- a/include/configs/kontron-sl-mx6ul.h
+++ b/include/configs/kontron-sl-mx6ul.h
@@ -37,7 +37,7 @@
#define BOOT_TARGET_DEVICES(func) \
func(MMC, mmc, 1) \
func(MMC, mmc, 0) \
- func(UBIFS, ubifs, 0) \
+ func(UBIFS, ubifs, 0, UBI, boot) \
func(USB, usb, 0) \
func(PXE, pxe, na) \
func(DHCP, dhcp, na)
diff --git a/include/configs/mys_6ulx.h b/include/configs/mys_6ulx.h
index b9689238195..4162ee8caa2 100644
--- a/include/configs/mys_6ulx.h
+++ b/include/configs/mys_6ulx.h
@@ -50,7 +50,7 @@
#define BOOT_TARGET_DEVICES(func) \
func(MMC, mmc, 0) \
- func(UBIFS, ubifs, 0) \
+ func(UBIFS, ubifs, 0, UBI, boot) \
func(PXE, pxe, na) \
func(DHCP, dhcp, na)
diff --git a/include/configs/npi_imx6ull.h b/include/configs/npi_imx6ull.h
index 6cdb1afcd9a..217427a302e 100644
--- a/include/configs/npi_imx6ull.h
+++ b/include/configs/npi_imx6ull.h
@@ -58,7 +58,7 @@
#define BOOT_TARGET_DEVICES(func) \
func(MMC, mmc, 0) \
- func(UBIFS, ubifs, 0) \
+ func(UBIFS, ubifs, 0, UBI, boot) \
func(PXE, pxe, na) \
func(DHCP, dhcp, na)
diff --git a/include/configs/omap3_beagle.h b/include/configs/omap3_beagle.h
index ab742798b92..2cd42e5a1dc 100644
--- a/include/configs/omap3_beagle.h
+++ b/include/configs/omap3_beagle.h
@@ -62,7 +62,7 @@
#define BOOT_TARGET_DEVICES(func) \
func(MMC, mmc, 0) \
func(LEGACY_MMC, legacy_mmc, 0) \
- func(UBIFS, ubifs, 0) \
+ func(UBIFS, ubifs, 0, rootfs, rootfs) \
func(NAND, nand, 0)
#else /* !CONFIG_MTD_RAW_NAND */
@@ -84,8 +84,6 @@
"bootenv=uEnv.txt\0" \
"bootfile=zImage\0" \
"bootpart=0:2\0" \
- "bootubivol=rootfs\0" \
- "bootubipart=rootfs\0" \
"usbtty=cdc_acm\0" \
"mpurate=auto\0" \
"buddy=none\0" \
diff --git a/include/configs/omap3_evm.h b/include/configs/omap3_evm.h
index 1b94f8efa22..2683d4c7ea4 100644
--- a/include/configs/omap3_evm.h
+++ b/include/configs/omap3_evm.h
@@ -56,7 +56,7 @@
#define BOOT_TARGET_DEVICES(func) \
func(MMC, mmc, 0) \
func(LEGACY_MMC, legacy_mmc, 0) \
- func(UBIFS, ubifs, 0) \
+ func(UBIFS, ubifs, 0, rootfs, rootfs) \
func(NAND, nand, 0)
#else /* !CONFIG_MTD_RAW_NAND */
@@ -82,8 +82,6 @@
"bootenv=uEnv.txt\0" \
"bootfile=zImage\0" \
"bootpart=0:2\0" \
- "bootubivol=rootfs\0" \
- "bootubipart=rootfs\0" \
"optargs=\0" \
"nandroot=ubi0:rootfs ubi.mtd=rootfs rw noinitrd\0" \
"nandrootfstype=ubifs rootwait\0" \
diff --git a/include/configs/pcl063.h b/include/configs/pcl063.h
index 6683f21d15d..6e593da936c 100644
--- a/include/configs/pcl063.h
+++ b/include/configs/pcl063.h
@@ -62,7 +62,7 @@
#define BOOT_TARGET_DEVICES(func) \
func(MMC, mmc, 0) \
- func(UBIFS, ubifs, 0) \
+ func(UBIFS, ubifs, 0, UBI, boot) \
func(PXE, pxe, na) \
func(DHCP, dhcp, na)
diff --git a/include/configs/stm32mp15_common.h b/include/configs/stm32mp15_common.h
index 56fb4d38e45..c5412ffeb31 100644
--- a/include/configs/stm32mp15_common.h
+++ b/include/configs/stm32mp15_common.h
@@ -57,7 +57,7 @@
#endif
#ifdef CONFIG_CMD_UBIFS
-#define BOOT_TARGET_UBIFS(func) func(UBIFS, ubifs, 0)
+#define BOOT_TARGET_UBIFS(func) func(UBIFS, ubifs, 0, UBI, boot)
#else
#define BOOT_TARGET_UBIFS(func)
#endif
diff --git a/include/configs/uniphier.h b/include/configs/uniphier.h
index 15d41fba95c..15ae0844c1a 100644
--- a/include/configs/uniphier.h
+++ b/include/configs/uniphier.h
@@ -19,7 +19,7 @@
#endif
#ifdef CONFIG_CMD_UBIFS
-#define BOOT_TARGET_DEVICE_UBIFS(func) func(UBIFS, ubifs, 0)
+#define BOOT_TARGET_DEVICE_UBIFS(func) func(UBIFS, ubifs, 0, UBI, boot)
#else
#define BOOT_TARGET_DEVICE_UBIFS(func)
#endif