* [U-Boot] [PATCH v4 0/2] SPL: Add support to boot a partition type
@ 2017-02-03 18:36 Dalon Westergreen
2017-02-03 18:36 ` [U-Boot] [PATCH v4 1/2] SPL: add support to boot from " Dalon Westergreen
` (2 more replies)
0 siblings, 3 replies; 9+ messages in thread
From: Dalon Westergreen @ 2017-02-03 18:36 UTC (permalink / raw)
To: u-boot
From: Dalon Westergreen <dalon.westergreen@intel.com>
This adds support for the spl to seach for and boot from an arbitrary
partition type rather then a specific partition number. When
USE_PARTITION_TYPE is enabled, splwill search for the partition type but
fallback to the specified partition number.
In addition to the above, move SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION to Kconfig.
Dalon Westergreen (2):
SPL: add support to boot from a partition type
SPL: Move SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION to Kconfig
common/spl/Kconfig | 33 +++++++++++++++++++++++++++++++++
common/spl/spl_mmc.c | 27 ++++++++++++++++++---------
configs/db-88f6820-gp_defconfig | 1 +
configs/kc1_defconfig | 2 ++
configs/sniper_defconfig | 2 ++
disk/part_dos.c | 1 +
include/configs/db-88f6820-gp.h | 1 -
include/configs/kc1.h | 2 --
include/configs/sniper.h | 2 --
include/configs/socfpga_common.h | 2 --
include/part.h | 3 +++
11 files changed, 60 insertions(+), 16 deletions(-)
--
2.7.4
^ permalink raw reply [flat|nested] 9+ messages in thread* [U-Boot] [PATCH v4 1/2] SPL: add support to boot from a partition type 2017-02-03 18:36 [U-Boot] [PATCH v4 0/2] SPL: Add support to boot a partition type Dalon Westergreen @ 2017-02-03 18:36 ` Dalon Westergreen 2017-02-09 10:04 ` Marek Vasut 2017-02-03 18:36 ` [U-Boot] [PATCH v4 2/2] SPL: Move SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION to Kconfig Dalon Westergreen 2017-02-09 0:15 ` [U-Boot] [PATCH v4 0/2] SPL: Add support to boot a partition type Dalon Westergreen 2 siblings, 1 reply; 9+ messages in thread From: Dalon Westergreen @ 2017-02-03 18:36 UTC (permalink / raw) To: u-boot From: Dalon Westergreen <dalon.westergreen@intel.com> the socfpga bootrom supports mmc booting from either a raw image starting at 0x0, or from a partition of type 0xa2. This patch adds support for locating the boot image in the first type 0xa2 partition found. Assigned a partition number of -1 will cause a search for a partition of type CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION_TYPE and use it to find the u-boot image Signed-off-by: Dalon Westergreen <dwesterg@gmail.com> -- Changes in V5: - fix styling in if (..) per Tom's request Changes in V4: - Try search for partition type and failover to the defined partition number Changes in V3: - Add depends on DOS_PARTITION - Ensure that PARTTION_TYPE defaults to non-zero - Add ifdef around sys_ind in disk_partition structure Changes in V2: - Merge partition search into single partition function --- common/spl/Kconfig | 17 +++++++++++++++++ common/spl/spl_mmc.c | 15 +++++++++++++++ disk/part_dos.c | 1 + include/part.h | 3 +++ 4 files changed, 36 insertions(+) diff --git a/common/spl/Kconfig b/common/spl/Kconfig index b2ba492..37e002f 100644 --- a/common/spl/Kconfig +++ b/common/spl/Kconfig @@ -96,6 +96,23 @@ 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_TYPE + bool "MMC raw mode: by partition type" + depends on SPL && DOS_PARTITION + default y if ARCH_SOCFPGA + help + Use partition type for specifying U-Boot partition on MMC/SD in + raw mode. U-Boot will be loaded from the first partition of this + type to be found. + +config SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION_TYPE + hex "Partition Type on the MMC to load U-Boot from" + depends on SPL && SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION_TYPE + default 0xa2 + help + Partition Type on the MMC to load U-Boot from, when the MMC is being + used in raw mode. + config TPL bool depends on SPL && SUPPORT_TPL diff --git a/common/spl/spl_mmc.c b/common/spl/spl_mmc.c index 0cd355c..f127aee 100644 --- a/common/spl/spl_mmc.c +++ b/common/spl/spl_mmc.c @@ -157,6 +157,21 @@ static int mmc_load_image_raw_partition(struct spl_image_info *spl_image, disk_partition_t info; int err; +#ifdef CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION_TYPE + int type_part; + /* Only support MBR so DOS_ENTRY_NUMBERS */ + for (type_part = 1; type_part <= DOS_ENTRY_NUMBERS; type_part++) { + err = part_get_info(mmc_get_blk_desc(mmc), type_part, &info); + if (err) + continue; + if (info.sys_ind == \ + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION_TYPE) { + partition = type_part; + break; + } + } +#endif + err = part_get_info(mmc_get_blk_desc(mmc), partition, &info); if (err) { #ifdef CONFIG_SPL_LIBCOMMON_SUPPORT diff --git a/disk/part_dos.c b/disk/part_dos.c index c77d881..7ede15e 100644 --- a/disk/part_dos.c +++ b/disk/part_dos.c @@ -217,6 +217,7 @@ static int part_get_info_extended(struct blk_desc *dev_desc, #if CONFIG_IS_ENABLED(PARTITION_UUIDS) sprintf(info->uuid, "%08x-%02x", disksig, part_num); #endif + info->sys_ind = pt->sys_ind; return 0; } diff --git a/include/part.h b/include/part.h index 9d0e20d..b6d1b33 100644 --- a/include/part.h +++ b/include/part.h @@ -59,6 +59,9 @@ typedef struct disk_partition { #ifdef CONFIG_PARTITION_TYPE_GUID char type_guid[37]; /* type GUID as string, if exists */ #endif +#ifdef CONFIG_DOS_PARTITION + uchar sys_ind; /* partition type */ +#endif } disk_partition_t; /* Misc _get_dev functions */ -- 2.7.4 ^ permalink raw reply related [flat|nested] 9+ messages in thread
* [U-Boot] [PATCH v4 1/2] SPL: add support to boot from a partition type 2017-02-03 18:36 ` [U-Boot] [PATCH v4 1/2] SPL: add support to boot from " Dalon Westergreen @ 2017-02-09 10:04 ` Marek Vasut 0 siblings, 0 replies; 9+ messages in thread From: Marek Vasut @ 2017-02-09 10:04 UTC (permalink / raw) To: u-boot On 02/03/2017 07:36 PM, Dalon Westergreen wrote: > From: Dalon Westergreen <dalon.westergreen@intel.com> > > the socfpga bootrom supports mmc booting from either a raw image > starting at 0x0, or from a partition of type 0xa2. This patch > adds support for locating the boot image in the first type 0xa2 > partition found. > > Assigned a partition number of -1 will cause a search for a > partition of type CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION_TYPE > and use it to find the u-boot image > > Signed-off-by: Dalon Westergreen <dwesterg@gmail.com> > > -- > Changes in V5: > - fix styling in if (..) per Tom's request > Changes in V4: > - Try search for partition type and failover to the defined > partition number > Changes in V3: > - Add depends on DOS_PARTITION > - Ensure that PARTTION_TYPE defaults to non-zero > - Add ifdef around sys_ind in disk_partition structure > Changes in V2: > - Merge partition search into single partition function > --- > common/spl/Kconfig | 17 +++++++++++++++++ > common/spl/spl_mmc.c | 15 +++++++++++++++ > disk/part_dos.c | 1 + > include/part.h | 3 +++ > 4 files changed, 36 insertions(+) > > diff --git a/common/spl/Kconfig b/common/spl/Kconfig > index b2ba492..37e002f 100644 > --- a/common/spl/Kconfig > +++ b/common/spl/Kconfig > @@ -96,6 +96,23 @@ 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_TYPE > + bool "MMC raw mode: by partition type" > + depends on SPL && DOS_PARTITION > + default y if ARCH_SOCFPGA > + help > + Use partition type for specifying U-Boot partition on MMC/SD in > + raw mode. U-Boot will be loaded from the first partition of this > + type to be found. > + > +config SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION_TYPE > + hex "Partition Type on the MMC to load U-Boot from" > + depends on SPL && SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION_TYPE > + default 0xa2 > + help > + Partition Type on the MMC to load U-Boot from, when the MMC is being > + used in raw mode. > + > config TPL > bool > depends on SPL && SUPPORT_TPL > diff --git a/common/spl/spl_mmc.c b/common/spl/spl_mmc.c > index 0cd355c..f127aee 100644 > --- a/common/spl/spl_mmc.c > +++ b/common/spl/spl_mmc.c > @@ -157,6 +157,21 @@ static int mmc_load_image_raw_partition(struct spl_image_info *spl_image, > disk_partition_t info; > int err; > > +#ifdef CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION_TYPE > + int type_part; > + /* Only support MBR so DOS_ENTRY_NUMBERS */ > + for (type_part = 1; type_part <= DOS_ENTRY_NUMBERS; type_part++) { > + err = part_get_info(mmc_get_blk_desc(mmc), type_part, &info); > + if (err) > + continue; > + if (info.sys_ind == \ The backslash here is not needed. > + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION_TYPE) { > + partition = type_part; > + break; > + } > + } > +#endif > + > err = part_get_info(mmc_get_blk_desc(mmc), partition, &info); > if (err) { > #ifdef CONFIG_SPL_LIBCOMMON_SUPPORT > diff --git a/disk/part_dos.c b/disk/part_dos.c > index c77d881..7ede15e 100644 > --- a/disk/part_dos.c > +++ b/disk/part_dos.c > @@ -217,6 +217,7 @@ static int part_get_info_extended(struct blk_desc *dev_desc, > #if CONFIG_IS_ENABLED(PARTITION_UUIDS) > sprintf(info->uuid, "%08x-%02x", disksig, part_num); > #endif > + info->sys_ind = pt->sys_ind; > return 0; > } > > diff --git a/include/part.h b/include/part.h > index 9d0e20d..b6d1b33 100644 > --- a/include/part.h > +++ b/include/part.h > @@ -59,6 +59,9 @@ typedef struct disk_partition { > #ifdef CONFIG_PARTITION_TYPE_GUID > char type_guid[37]; /* type GUID as string, if exists */ > #endif > +#ifdef CONFIG_DOS_PARTITION > + uchar sys_ind; /* partition type */ > +#endif > } disk_partition_t; > > /* Misc _get_dev functions */ > -- Best regards, Marek Vasut ^ permalink raw reply [flat|nested] 9+ messages in thread
* [U-Boot] [PATCH v4 2/2] SPL: Move SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION to Kconfig 2017-02-03 18:36 [U-Boot] [PATCH v4 0/2] SPL: Add support to boot a partition type Dalon Westergreen 2017-02-03 18:36 ` [U-Boot] [PATCH v4 1/2] SPL: add support to boot from " Dalon Westergreen @ 2017-02-03 18:36 ` Dalon Westergreen 2017-02-09 10:06 ` Marek Vasut 2017-02-09 0:15 ` [U-Boot] [PATCH v4 0/2] SPL: Add support to boot a partition type Dalon Westergreen 2 siblings, 1 reply; 9+ messages in thread From: Dalon Westergreen @ 2017-02-03 18:36 UTC (permalink / raw) To: u-boot From: Dalon Westergreen <dalon.westergreen@intel.com> Added SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION and SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION to Kconfig. set to default y for socfpga platforms, and add appropriate configurations for kc1, snipper, and db-88f6820-gp boards. Signed-off-by: Dalon Westergreen <dwesterg@gmail.com> -- 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 fix use_sector --- common/spl/Kconfig | 18 +++++++++++++++++- common/spl/spl_mmc.c | 12 +++--------- configs/db-88f6820-gp_defconfig | 1 + configs/kc1_defconfig | 2 ++ configs/sniper_defconfig | 2 ++ include/configs/db-88f6820-gp.h | 1 - include/configs/kc1.h | 2 -- include/configs/sniper.h | 2 -- include/configs/socfpga_common.h | 2 -- 9 files changed, 25 insertions(+), 17 deletions(-) diff --git a/common/spl/Kconfig b/common/spl/Kconfig index 37e002f..120381a 100644 --- a/common/spl/Kconfig +++ b/common/spl/Kconfig @@ -96,9 +96,25 @@ 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 + default y if ARCH_SOCFPGA + 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 f127aee..956695b 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/configs/db-88f6820-gp_defconfig b/configs/db-88f6820-gp_defconfig index 1347550..fec5e56 100644 --- a/configs/db-88f6820-gp_defconfig +++ b/configs/db-88f6820-gp_defconfig @@ -51,3 +51,4 @@ CONFIG_USB=y CONFIG_DM_USB=y CONFIG_USB_EHCI_HCD=y CONFIG_USB_STORAGE=y +CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION=y diff --git a/configs/kc1_defconfig b/configs/kc1_defconfig index d9895d7..ffaaec3 100644 --- a/configs/kc1_defconfig +++ b/configs/kc1_defconfig @@ -36,3 +36,5 @@ CONFIG_G_DNL_MANUFACTURER="Texas Instruments" CONFIG_G_DNL_VENDOR_NUM=0x0451 CONFIG_G_DNL_PRODUCT_NUM=0xd022 CONFIG_OF_LIBFDT=y +CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION=y +CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=2 diff --git a/configs/sniper_defconfig b/configs/sniper_defconfig index fbdbc0c..9dd737f 100644 --- a/configs/sniper_defconfig +++ b/configs/sniper_defconfig @@ -37,3 +37,5 @@ CONFIG_G_DNL_MANUFACTURER="Texas Instruments" CONFIG_G_DNL_VENDOR_NUM=0x0451 CONFIG_G_DNL_PRODUCT_NUM=0xd022 CONFIG_OF_LIBFDT=y +CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION=y +CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=2 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 -- 2.7.4 ^ permalink raw reply related [flat|nested] 9+ messages in thread
* [U-Boot] [PATCH v4 2/2] SPL: Move SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION to Kconfig 2017-02-03 18:36 ` [U-Boot] [PATCH v4 2/2] SPL: Move SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION to Kconfig Dalon Westergreen @ 2017-02-09 10:06 ` Marek Vasut 0 siblings, 0 replies; 9+ messages in thread From: Marek Vasut @ 2017-02-09 10:06 UTC (permalink / raw) To: u-boot On 02/03/2017 07:36 PM, Dalon Westergreen wrote: > From: Dalon Westergreen <dalon.westergreen@intel.com> > > Added SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION and > SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION to Kconfig. > > set to default y for socfpga platforms, and add appropriate > configurations for kc1, snipper, and db-88f6820-gp boards. > > Signed-off-by: Dalon Westergreen <dwesterg@gmail.com> > > -- > 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 > > fix use_sector > --- > common/spl/Kconfig | 18 +++++++++++++++++- > common/spl/spl_mmc.c | 12 +++--------- > configs/db-88f6820-gp_defconfig | 1 + > configs/kc1_defconfig | 2 ++ > configs/sniper_defconfig | 2 ++ > include/configs/db-88f6820-gp.h | 1 - > include/configs/kc1.h | 2 -- > include/configs/sniper.h | 2 -- > include/configs/socfpga_common.h | 2 -- > 9 files changed, 25 insertions(+), 17 deletions(-) > > diff --git a/common/spl/Kconfig b/common/spl/Kconfig > index 37e002f..120381a 100644 > --- a/common/spl/Kconfig > +++ b/common/spl/Kconfig > @@ -96,9 +96,25 @@ 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 > + default y if ARCH_SOCFPGA This is IMO wrong, it should be selected by ARCH_SOCFPGA in arch/arm/Kconfig . > + 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 f127aee..956695b 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); The defconfig stuff should be in a separate patch IMO. > diff --git a/configs/db-88f6820-gp_defconfig b/configs/db-88f6820-gp_defconfig > index 1347550..fec5e56 100644 > --- a/configs/db-88f6820-gp_defconfig > +++ b/configs/db-88f6820-gp_defconfig > @@ -51,3 +51,4 @@ CONFIG_USB=y > CONFIG_DM_USB=y > CONFIG_USB_EHCI_HCD=y > CONFIG_USB_STORAGE=y > +CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION=y > diff --git a/configs/kc1_defconfig b/configs/kc1_defconfig > index d9895d7..ffaaec3 100644 > --- a/configs/kc1_defconfig > +++ b/configs/kc1_defconfig > @@ -36,3 +36,5 @@ CONFIG_G_DNL_MANUFACTURER="Texas Instruments" > CONFIG_G_DNL_VENDOR_NUM=0x0451 > CONFIG_G_DNL_PRODUCT_NUM=0xd022 > CONFIG_OF_LIBFDT=y > +CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION=y > +CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=2 > diff --git a/configs/sniper_defconfig b/configs/sniper_defconfig > index fbdbc0c..9dd737f 100644 > --- a/configs/sniper_defconfig > +++ b/configs/sniper_defconfig > @@ -37,3 +37,5 @@ CONFIG_G_DNL_MANUFACTURER="Texas Instruments" > CONFIG_G_DNL_VENDOR_NUM=0x0451 > CONFIG_G_DNL_PRODUCT_NUM=0xd022 > CONFIG_OF_LIBFDT=y > +CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION=y > +CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=2 > 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 > > -- Best regards, Marek Vasut ^ permalink raw reply [flat|nested] 9+ messages in thread
* [U-Boot] [PATCH v4 0/2] SPL: Add support to boot a partition type 2017-02-03 18:36 [U-Boot] [PATCH v4 0/2] SPL: Add support to boot a partition type Dalon Westergreen 2017-02-03 18:36 ` [U-Boot] [PATCH v4 1/2] SPL: add support to boot from " Dalon Westergreen 2017-02-03 18:36 ` [U-Boot] [PATCH v4 2/2] SPL: Move SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION to Kconfig Dalon Westergreen @ 2017-02-09 0:15 ` Dalon Westergreen 2017-02-09 10:06 ` Marek Vasut 2 siblings, 1 reply; 9+ messages in thread From: Dalon Westergreen @ 2017-02-09 0:15 UTC (permalink / raw) To: u-boot On Fri, 2017-02-03 at 10:36 -0800, Dalon Westergreen wrote: > From: Dalon Westergreen <dalon.westergreen@intel.com> > > This adds support for the spl to seach for and boot from an arbitrary? > partition type rather then a specific partition number.??When > USE_PARTITION_TYPE is enabled, splwill search for the partition type but > fallback to the specified partition number. > > In addition to the above, move SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION to Kconfig. > > Dalon Westergreen (2): > ? SPL: add support to boot from a partition type > ? SPL: Move SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION to Kconfig > > ?common/spl/Kconfig???????????????| 33 +++++++++++++++++++++++++++++++++ > ?common/spl/spl_mmc.c?????????????| 27 ++++++++++++++++++--------- > ?configs/db-88f6820-gp_defconfig??|??1 + > ?configs/kc1_defconfig????????????|??2 ++ > ?configs/sniper_defconfig?????????|??2 ++ > ?disk/part_dos.c??????????????????|??1 + > ?include/configs/db-88f6820-gp.h??|??1 - > ?include/configs/kc1.h????????????|??2 -- > ?include/configs/sniper.h?????????|??2 -- > ?include/configs/socfpga_common.h |??2 -- > ?include/part.h???????????????????|??3 +++ > ?11 files changed, 60 insertions(+), 16 deletions(-) Marek, I was wondering if you have had a chance to look this over? --dalon ^ permalink raw reply [flat|nested] 9+ messages in thread
* [U-Boot] [PATCH v4 0/2] SPL: Add support to boot a partition type 2017-02-09 0:15 ` [U-Boot] [PATCH v4 0/2] SPL: Add support to boot a partition type Dalon Westergreen @ 2017-02-09 10:06 ` Marek Vasut 2017-02-09 14:28 ` Dalon Westergreen 0 siblings, 1 reply; 9+ messages in thread From: Marek Vasut @ 2017-02-09 10:06 UTC (permalink / raw) To: u-boot On 02/09/2017 01:15 AM, Dalon Westergreen wrote: > On Fri, 2017-02-03 at 10:36 -0800, Dalon Westergreen wrote: >> From: Dalon Westergreen <dalon.westergreen@intel.com> >> >> This adds support for the spl to seach for and boot from an arbitrary >> partition type rather then a specific partition number. When >> USE_PARTITION_TYPE is enabled, splwill search for the partition type but >> fallback to the specified partition number. >> >> In addition to the above, move SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION to Kconfig. >> >> Dalon Westergreen (2): >> SPL: add support to boot from a partition type >> SPL: Move SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION to Kconfig >> >> common/spl/Kconfig | 33 +++++++++++++++++++++++++++++++++ >> common/spl/spl_mmc.c | 27 ++++++++++++++++++--------- >> configs/db-88f6820-gp_defconfig | 1 + >> configs/kc1_defconfig | 2 ++ >> configs/sniper_defconfig | 2 ++ >> disk/part_dos.c | 1 + >> include/configs/db-88f6820-gp.h | 1 - >> include/configs/kc1.h | 2 -- >> include/configs/sniper.h | 2 -- >> include/configs/socfpga_common.h | 2 -- >> include/part.h | 3 +++ >> 11 files changed, 60 insertions(+), 16 deletions(-) > > Marek, I was wondering if you have had a chance to look this over? Looks generally OK, just a few minor nits. -- Best regards, Marek Vasut ^ permalink raw reply [flat|nested] 9+ messages in thread
* [U-Boot] [PATCH v4 0/2] SPL: Add support to boot a partition type 2017-02-09 10:06 ` Marek Vasut @ 2017-02-09 14:28 ` Dalon Westergreen 2017-02-09 15:02 ` Marek Vasut 0 siblings, 1 reply; 9+ messages in thread From: Dalon Westergreen @ 2017-02-09 14:28 UTC (permalink / raw) To: u-boot On Thu, 2017-02-09 at 11:06 +0100, Marek Vasut wrote: > On 02/09/2017 01:15 AM, Dalon Westergreen wrote: > > > > On Fri, 2017-02-03 at 10:36 -0800, Dalon Westergreen wrote: > > > > > > From: Dalon Westergreen <dalon.westergreen@intel.com> > > > > > > This adds support for the spl to seach for and boot from an arbitrary? > > > partition type rather then a specific partition number.??When > > > USE_PARTITION_TYPE is enabled, splwill search for the partition type but > > > fallback to the specified partition number. > > > > > > In addition to the above, move SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION to > > > Kconfig. > > > > > > Dalon Westergreen (2): > > > ? SPL: add support to boot from a partition type > > > ? SPL: Move SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION to Kconfig > > > > > > ?common/spl/Kconfig???????????????| 33 +++++++++++++++++++++++++++++++++ > > > ?common/spl/spl_mmc.c?????????????| 27 ++++++++++++++++++--------- > > > ?configs/db-88f6820-gp_defconfig??|??1 + > > > ?configs/kc1_defconfig????????????|??2 ++ > > > ?configs/sniper_defconfig?????????|??2 ++ > > > ?disk/part_dos.c??????????????????|??1 + > > > ?include/configs/db-88f6820-gp.h??|??1 - > > > ?include/configs/kc1.h????????????|??2 -- > > > ?include/configs/sniper.h?????????|??2 -- > > > ?include/configs/socfpga_common.h |??2 -- > > > ?include/part.h???????????????????|??3 +++ > > > ?11 files changed, 60 insertions(+), 16 deletions(-) > > > > Marek, I was wondering if you have had a chance to look this over? > > Looks generally OK, just a few minor nits. thanks, i will clean them up. > > ^ permalink raw reply [flat|nested] 9+ messages in thread
* [U-Boot] [PATCH v4 0/2] SPL: Add support to boot a partition type 2017-02-09 14:28 ` Dalon Westergreen @ 2017-02-09 15:02 ` Marek Vasut 0 siblings, 0 replies; 9+ messages in thread From: Marek Vasut @ 2017-02-09 15:02 UTC (permalink / raw) To: u-boot On 02/09/2017 03:28 PM, Dalon Westergreen wrote: > On Thu, 2017-02-09 at 11:06 +0100, Marek Vasut wrote: >> On 02/09/2017 01:15 AM, Dalon Westergreen wrote: >>> >>> On Fri, 2017-02-03 at 10:36 -0800, Dalon Westergreen wrote: >>>> >>>> From: Dalon Westergreen <dalon.westergreen@intel.com> >>>> >>>> This adds support for the spl to seach for and boot from an arbitrary >>>> partition type rather then a specific partition number. When >>>> USE_PARTITION_TYPE is enabled, splwill search for the partition type but >>>> fallback to the specified partition number. >>>> >>>> In addition to the above, move SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION to >>>> Kconfig. >>>> >>>> Dalon Westergreen (2): >>>> SPL: add support to boot from a partition type >>>> SPL: Move SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION to Kconfig >>>> >>>> common/spl/Kconfig | 33 +++++++++++++++++++++++++++++++++ >>>> common/spl/spl_mmc.c | 27 ++++++++++++++++++--------- >>>> configs/db-88f6820-gp_defconfig | 1 + >>>> configs/kc1_defconfig | 2 ++ >>>> configs/sniper_defconfig | 2 ++ >>>> disk/part_dos.c | 1 + >>>> include/configs/db-88f6820-gp.h | 1 - >>>> include/configs/kc1.h | 2 -- >>>> include/configs/sniper.h | 2 -- >>>> include/configs/socfpga_common.h | 2 -- >>>> include/part.h | 3 +++ >>>> 11 files changed, 60 insertions(+), 16 deletions(-) >>> >>> Marek, I was wondering if you have had a chance to look this over? >> >> Looks generally OK, just a few minor nits. > > thanks, i will clean them up. Thanks! -- Best regards, Marek Vasut ^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2017-02-09 15:02 UTC | newest] Thread overview: 9+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2017-02-03 18:36 [U-Boot] [PATCH v4 0/2] SPL: Add support to boot a partition type Dalon Westergreen 2017-02-03 18:36 ` [U-Boot] [PATCH v4 1/2] SPL: add support to boot from " Dalon Westergreen 2017-02-09 10:04 ` Marek Vasut 2017-02-03 18:36 ` [U-Boot] [PATCH v4 2/2] SPL: Move SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION to Kconfig Dalon Westergreen 2017-02-09 10:06 ` Marek Vasut 2017-02-09 0:15 ` [U-Boot] [PATCH v4 0/2] SPL: Add support to boot a partition type Dalon Westergreen 2017-02-09 10:06 ` Marek Vasut 2017-02-09 14:28 ` Dalon Westergreen 2017-02-09 15:02 ` Marek Vasut
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox