Prepare v2023.10
[platform/kernel/u-boot.git] / include / config_distro_bootcmd.h
index 2157f35..2a136b9 100644 (file)
        #devtypel "_boot=" \
        BOOTENV_SHARED_BLKDEV_BODY(devtypel)
 
+#define BOOTENV_DEV_BLKDEV_NONE(devtypeu, devtypel, instance)
+
 #define BOOTENV_DEV_BLKDEV(devtypeu, devtypel, instance) \
        "bootcmd_" #devtypel #instance "=" \
                "devnum=" #instance "; " \
                "run " #devtypel "_boot\0"
 
+#define BOOTENV_DEV_NAME_BLKDEV_NONE(devtypeu, devtypel, instance)
+
 #define BOOTENV_DEV_NAME_BLKDEV(devtypeu, devtypel, instance) \
        #devtypel #instance " "
 
 #define BOOTENV_SHARED_MMC     BOOTENV_SHARED_BLKDEV(mmc)
 #define BOOTENV_DEV_MMC                BOOTENV_DEV_BLKDEV
 #define BOOTENV_DEV_NAME_MMC   BOOTENV_DEV_NAME_BLKDEV
+#elif defined(CONFIG_SPL_BUILD)
+#define BOOTENV_SHARED_MMC
+#define BOOTENV_DEV_MMC                BOOTENV_DEV_BLKDEV_NONE
+#define BOOTENV_DEV_NAME_MMC   BOOTENV_DEV_NAME_BLKDEV_NONE
 #else
 #define BOOTENV_SHARED_MMC
 #define BOOTENV_DEV_MMC \
@@ -70,7 +78,7 @@
 #ifdef CONFIG_CMD_UBIFS
 #define BOOTENV_SHARED_UBIFS \
        "ubifs_boot=" \
-               "if ubi part ${bootubipart} && " \
+               "if ubi part ${bootubipart} ${bootubioff} && " \
                        "ubifsmount ubi0:${bootubivol}; " \
                "then " \
                        "devtype=ubi; " \
                        "run scan_dev_for_boot; " \
                        "ubifsumount; " \
                "fi\0"
-#define BOOTENV_DEV_UBIFS(devtypeu, devtypel, instance, bootubipart, bootubivol) \
+#define BOOTENV_DEV_UBIFS_BOOTUBIOFF(off) #off /* type check, throw error when called with more args */
+#define BOOTENV_DEV_UBIFS(devtypeu, devtypel, instance, bootubipart, bootubivol, ...) \
        "bootcmd_ubifs" #instance "=" \
                "bootubipart=" #bootubipart "; " \
                "bootubivol=" #bootubivol "; " \
+               "bootubioff=" BOOTENV_DEV_UBIFS_BOOTUBIOFF(__VA_ARGS__) "; " \
                "run ubifs_boot\0"
-#define BOOTENV_DEV_NAME_UBIFS(devtypeu, devtypel, instance, bootubipart, bootubivol) \
+#define BOOTENV_DEV_NAME_UBIFS(devtypeu, devtypel, instance, ...) \
        #devtypel #instance " "
 #else
 #define BOOTENV_SHARED_UBIFS
 #define BOOTENV_SHARED_SATA    BOOTENV_SHARED_BLKDEV(sata)
 #define BOOTENV_DEV_SATA       BOOTENV_DEV_BLKDEV
 #define BOOTENV_DEV_NAME_SATA  BOOTENV_DEV_NAME_BLKDEV
+#elif defined(CONFIG_SPL_BUILD)
+#define BOOTENV_SHARED_SATA
+#define BOOTENV_DEV_SATA       BOOTENV_DEV_BLKDEV_NONE
+#define BOOTENV_DEV_NAME_SATA  BOOTENV_DEV_NAME_BLKDEV_NONE
 #else
 #define BOOTENV_SHARED_SATA
 #define BOOTENV_DEV_SATA \
                BOOTENV_SHARED_BLKDEV_BODY(usb)
 #define BOOTENV_DEV_USB                BOOTENV_DEV_BLKDEV
 #define BOOTENV_DEV_NAME_USB   BOOTENV_DEV_NAME_BLKDEV
+#elif defined(CONFIG_SPL_BUILD)
+#define BOOTENV_RUN_NET_USB_START
+#define BOOTENV_SHARED_USB
+#define BOOTENV_DEV_USB                BOOTENV_DEV_BLKDEV_NONE
+#define BOOTENV_DEV_NAME_USB   BOOTENV_DEV_NAME_BLKDEV_NONE
 #else
 #define BOOTENV_RUN_NET_USB_START
 #define BOOTENV_SHARED_USB
                "\0"
 #define BOOTENV_DEV_NAME_DHCP(devtypeu, devtypel, instance) \
        "dhcp "
+#elif defined(CONFIG_SPL_BUILD)
+#define BOOTENV_DEV_DHCP       BOOTENV_DEV_BLKDEV_NONE
+#define BOOTENV_DEV_NAME_DHCP  BOOTENV_DEV_NAME_BLKDEV_NONE
 #else
 #define BOOTENV_DEV_DHCP \
        BOOT_TARGET_DEVICES_references_DHCP_without_CONFIG_CMD_DHCP
                "fi\0"
 #define BOOTENV_DEV_NAME_PXE(devtypeu, devtypel, instance) \
        "pxe "
+#elif defined(CONFIG_SPL_BUILD)
+#define BOOTENV_DEV_PXE                BOOTENV_DEV_BLKDEV_NONE
+#define BOOTENV_DEV_NAME_PXE   BOOTENV_DEV_NAME_BLKDEV_NONE
 #else
 #define BOOTENV_DEV_PXE \
        BOOT_TARGET_DEVICES_references_PXE_without_CONFIG_CMD_DHCP_or_PXE
                                "${prefix}${boot_syslinux_conf}; then "   \
                        "echo Found ${prefix}${boot_syslinux_conf}; "     \
                        "run boot_extlinux; "                             \
-                       "echo SCRIPT FAILED: continuing...; "             \
+                       "echo EXTLINUX FAILED: continuing...; "           \
                "fi\0"                                                    \
        \
        "boot_a_script="                                                  \
                        "if fstype ${devtype} "                           \
                                        "${devnum}:${distro_bootpart} "   \
                                        "bootfstype; then "               \
+                               "part uuid ${devtype} "                   \
+                                       "${devnum}:${distro_bootpart} "   \
+                                       "distro_bootpart_uuid ; "         \
                                "run scan_dev_for_boot; "                 \
                        "fi; "                                            \
                "done; "                                                  \