diff mbox

[U-Boot,v6,2/3] SPL: Move SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION to Kconfig

Message ID 1486671604-16203-3-git-send-email-dwesterg@gmail.com
State Superseded
Delegated to: Tom Rini
Headers show

Commit Message

Dalon Westergreen Feb. 9, 2017, 8:20 p.m. UTC
Added SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION and
SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION to Kconfig.

Signed-off-by: Dalon Westergreen <dwesterg@gmail.com>

--
Changes in v3:
  -> Split off defconfig changes for db-88f6820-gp_defconfig
     kc1_defconfig and sniper_defconfig into a separate patch
Changes in v2:
  -> Remove SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION from socfpga_common.h
  -> wrong ifdef around mmc_load_image_raw_partition should be
     CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
---
 arch/arm/Kconfig                 |  1 +
 common/spl/Kconfig               | 17 ++++++++++++++++-
 common/spl/spl_mmc.c             | 12 +++---------
 include/configs/db-88f6820-gp.h  |  1 -
 include/configs/kc1.h            |  2 --
 include/configs/sniper.h         |  2 --
 include/configs/socfpga_common.h |  2 --
 7 files changed, 20 insertions(+), 17 deletions(-)

Comments

Tom Rini Feb. 10, 2017, 9:43 p.m. UTC | #1
On Thu, Feb 09, 2017 at 12:20:03PM -0800, Dalon Westergreen wrote:
> Added SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION and
> SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION to Kconfig.
> 
> Signed-off-by: Dalon Westergreen <dwesterg@gmail.com>
> 
> --
> Changes in v3:
>   -> Split off defconfig changes for db-88f6820-gp_defconfig
>      kc1_defconfig and sniper_defconfig into a separate patch

OK, I'm sorry you're getting conflicting advice here.  This change is
wrong as it breaks bisecability for the boards in question.  In general
adding to Kconfig and migrating the defconfigs should be done at the
same time, and doubly so for boot related ones like this.
Dalon Westergreen Feb. 10, 2017, 9:51 p.m. UTC | #2
On Fri, 2017-02-10 at 16:43 -0500, Tom Rini wrote:
> On Thu, Feb 09, 2017 at 12:20:03PM -0800, Dalon Westergreen wrote:
> > 
> > Added SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION and
> > SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION to Kconfig.
> > 
> > Signed-off-by: Dalon Westergreen <dwesterg@gmail.com>
> > 
> > --
> > Changes in v3:
> >   -> Split off defconfig changes for db-88f6820-gp_defconfig
> >      kc1_defconfig and sniper_defconfig into a separate patch
> 
> OK, I'm sorry you're getting conflicting advice here.  This change is
> wrong as it breaks bisecability for the boards in question.  In general
> adding to Kconfig and migrating the defconfigs should be done at the
> same time, and doubly so for boot related ones like this.
> 

Okay, so i can merge the 2 again. 

> _______________________________________________
> U-Boot mailing list
> U-Boot@lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
Tom Rini Feb. 10, 2017, 9:52 p.m. UTC | #3
On Fri, Feb 10, 2017 at 01:51:57PM -0800, Dalon Westergreen wrote:
> On Fri, 2017-02-10 at 16:43 -0500, Tom Rini wrote:
> > On Thu, Feb 09, 2017 at 12:20:03PM -0800, Dalon Westergreen wrote:
> > > 
> > > Added SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION and
> > > SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION to Kconfig.
> > > 
> > > Signed-off-by: Dalon Westergreen <dwesterg@gmail.com>
> > > 
> > > --
> > > Changes in v3:
> > >   -> Split off defconfig changes for db-88f6820-gp_defconfig
> > >      kc1_defconfig and sniper_defconfig into a separate patch
> > 
> > OK, I'm sorry you're getting conflicting advice here.  This change is
> > wrong as it breaks bisecability for the boards in question.  In general
> > adding to Kconfig and migrating the defconfigs should be done at the
> > same time, and doubly so for boot related ones like this.
> 
> Okay, so i can merge the 2 again. 

Yes, sorry and thanks!
diff mbox

Patch

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 0229800..e84b74e 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -633,6 +633,7 @@  config ARCH_SOCFPGA
 	select ENABLE_ARM_SOC_BOOT0_HOOK
 	select ARCH_EARLY_INIT_R
 	select ARCH_MISC_INIT
+	select SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
 
 config TARGET_CM_T43
 	bool "Support cm_t43"
diff --git a/common/spl/Kconfig b/common/spl/Kconfig
index 552b3b7..b45b841 100644
--- a/common/spl/Kconfig
+++ b/common/spl/Kconfig
@@ -96,9 +96,24 @@  config SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR
 	  Address on the MMC to load U-Boot from, when the MMC is being used
 	  in raw mode. Units: MMC sectors (1 sector = 512 bytes).
 
+config SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
+	bool "MMC Raw mode: by partition"
+	depends on SPL
+	help
+	  Use a partition for loading U-Boot when using MMC/SD in raw mode.
+
+config SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION
+	hex "Partition to use to load U-Boot from"
+	depends on SPL && SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
+	default 1
+	help
+	  Partition on the MMC to load U-Boot from when the MMC is being
+	  used in raw mode
+
 config SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION_TYPE
 	bool "MMC raw mode: by partition type"
-	depends on SPL && DOS_PARTITION
+	depends on SPL && DOS_PARTITION && \
+		SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
 	default y if ARCH_SOCFPGA
 	help
 	  Use partition type for specifying U-Boot partition on MMC/SD in
diff --git a/common/spl/spl_mmc.c b/common/spl/spl_mmc.c
index fb51fd5..18c1b59 100644
--- a/common/spl/spl_mmc.c
+++ b/common/spl/spl_mmc.c
@@ -150,7 +150,7 @@  static int spl_mmc_find_device(struct mmc **mmcp, u32 boot_device)
 	return 0;
 }
 
-#ifdef CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION
+#ifdef CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
 static int mmc_load_image_raw_partition(struct spl_image_info *spl_image,
 					struct mmc *mmc, int partition)
 {
@@ -187,13 +187,6 @@  static int mmc_load_image_raw_partition(struct spl_image_info *spl_image,
 	return mmc_load_image_raw_sector(spl_image, mmc, info.start);
 #endif
 }
-#else
-#define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION -1
-static int mmc_load_image_raw_partition(struct spl_image_info *spl_image,
-					struct mmc *mmc, int partition)
-{
-	return -ENOSYS;
-}
 #endif
 
 #ifdef CONFIG_SPL_OS_BOOT
@@ -341,11 +334,12 @@  int spl_mmc_load_image(struct spl_image_info *spl_image,
 			if (!err)
 				return err;
 		}
-
+#ifdef CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
 		err = mmc_load_image_raw_partition(spl_image, mmc,
 			CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION);
 		if (!err)
 			return err;
+#endif
 #ifdef CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR
 		err = mmc_load_image_raw_sector(spl_image, mmc,
 			CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR);
diff --git a/include/configs/db-88f6820-gp.h b/include/configs/db-88f6820-gp.h
index 1fdeedd..cc2bfbe 100644
--- a/include/configs/db-88f6820-gp.h
+++ b/include/configs/db-88f6820-gp.h
@@ -123,7 +123,6 @@ 
 
 #if CONFIG_SPL_BOOT_DEVICE == SPL_BOOT_SDIO_MMC_CARD
 /* SPL related MMC defines */
-#define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION 1
 #define CONFIG_SYS_MMC_U_BOOT_OFFS		(160 << 10)
 #define CONFIG_SYS_U_BOOT_OFFS			CONFIG_SYS_MMC_U_BOOT_OFFS
 #ifdef CONFIG_SPL_BUILD
diff --git a/include/configs/kc1.h b/include/configs/kc1.h
index 33b6a98..fed70f9 100644
--- a/include/configs/kc1.h
+++ b/include/configs/kc1.h
@@ -113,8 +113,6 @@ 
 #define CONFIG_SPL_LDSCRIPT		"arch/arm/mach-omap2/u-boot-spl.lds"
 #define CONFIG_SPL_BOARD_INIT
 
-#define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION	2
-
 /*
  * Console
  */
diff --git a/include/configs/sniper.h b/include/configs/sniper.h
index 4f8a9f8..06519fb 100644
--- a/include/configs/sniper.h
+++ b/include/configs/sniper.h
@@ -121,8 +121,6 @@ 
 #define CONFIG_SPL_LDSCRIPT		"arch/arm/mach-omap2/u-boot-spl.lds"
 #define CONFIG_SPL_BOARD_INIT
 
-#define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION	2
-
 #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION		1
 #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME			"u-boot.img"
 
diff --git a/include/configs/socfpga_common.h b/include/configs/socfpga_common.h
index 8bbe3c5..a5725cb 100644
--- a/include/configs/socfpga_common.h
+++ b/include/configs/socfpga_common.h
@@ -311,8 +311,6 @@  unsigned int cm_get_qspi_controller_clk_hz(void);
 #if defined(CONFIG_SPL_FAT_SUPPORT) || defined(CONFIG_SPL_EXT_SUPPORT)
 #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION	2
 #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME		"u-boot-dtb.img"
-#else
-#define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION	1
 #endif
 #endif