On 12/12/2025 12:34 am, Jan Kiszka wrote:
[CAUTION: This email is from outside your organization. Unless you trust the 
sender, do not click on links or open attachments as it may be a fraudulent 
email attempting to steal your information and/or compromise your computer.]

From: Jan Kiszka <[email protected]>

Add SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION_TYPE as condition where so
far SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION was enough - though often
by chance as both options were enabled.

Reorder the #ifdef blocks at this chance to follow the order in the
Kconfig menu.

Fixes: 2a00d73d081a ("spl: mmc: Try to clean up raw-mode options")
Signed-off-by: Jan Kiszka <[email protected]>
---
  common/spl/spl_mmc.c | 17 +++++++++--------
  include/part.h       |  3 ++-
  2 files changed, 11 insertions(+), 9 deletions(-)

diff --git a/common/spl/spl_mmc.c b/common/spl/spl_mmc.c
index d8ce3a84614..1942e417075 100644
--- a/common/spl/spl_mmc.c
+++ b/common/spl/spl_mmc.c
@@ -106,7 +106,8 @@ static int spl_mmc_find_device(struct mmc **mmcp, int 
mmc_dev)
         return 0;
  }

-#ifdef CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
+#if defined(CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION) || \
+    defined(CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION_TYPE)
  static int mmc_load_image_raw_partition(struct spl_image_info *spl_image,
                                         struct spl_boot_device *bootdev,
                                         struct mmc *mmc, int partition,
@@ -419,19 +420,19 @@ int spl_mmc_load(struct spl_image_info *spl_image,

                 raw_sect = spl_mmc_get_uboot_raw_sector(mmc, raw_sect);

-#ifdef CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
-               ret = mmc_load_image_raw_partition(spl_image, bootdev,
-                                                  mmc, raw_part,
-                                                  raw_sect);
-               if (!ret)
-                       return 0;
-#endif
  #ifdef CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR
                 ret = mmc_load_image_raw_sector(spl_image, bootdev, mmc,
                                                 raw_sect +
                                                 
spl_mmc_raw_uboot_offset(part));
                 if (!ret)
                         return 0;
+#elif defined(CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION) || \
+      defined(CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION_TYPE)
+               ret = mmc_load_image_raw_partition(spl_image, bootdev,
+                                                  mmc, raw_part,
+                                                  raw_sect);
+               if (!ret)
+                       return 0;
  #endif
                 /* If RAW mode fails, try FS mode. */
                 fallthrough;
diff --git a/include/part.h b/include/part.h
index 6caaa6526aa..ba4a63ddc75 100644
--- a/include/part.h
+++ b/include/part.h
@@ -461,7 +461,8 @@ ulong disk_blk_erase(struct udevice *dev, lbaint_t start, 
lbaint_t blkcnt);
  #ifdef CONFIG_XPL_BUILD
  # define part_print_ptr(x)     NULL
  # if defined(CONFIG_SPL_FS_EXT4) || defined(CONFIG_SPL_FS_FAT) || \
-       defined(CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION)
+       defined(CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION) || \
+       defined(CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION_TYPE)
  #  define part_get_info_ptr(x) x
  # else
  #  define part_get_info_ptr(x) NULL
--
2.51.0


Reviewed-by: Tien Fong Chee <[email protected]>

Best regards,
Tien Fong

Reply via email to