[U-Boot] [PATCH V2 2/2] common: add new boot media kconfig entry

Peng Fan van.freenix at gmail.com
Tue Jun 28 07:02:49 CEST 2016


Hi Tom,

On Fri, Jun 24, 2016 at 06:57:44PM -0400, Tom Rini wrote:
>On Sun, Jun 19, 2016 at 06:20:52PM +0800, Peng Fan wrote:
>> Hi Masahiro,
>> 
>> +Simon
>> On Fri, Jun 17, 2016 at 07:08:23PM +0900, Masahiro Yamada wrote:
>> >2016-06-17 18:39 GMT+09:00 Peng Fan <van.freenix at gmail.com>:
>> >> Add CONFIG_{SD|NAND|ONENAND|SPI|QSPI|SATA}_BOOT kconfig entries.
>> >>
>> >> SoCs supports loading U-Boot from different medias to DRAM, such as
>> >> i.MX6/7 supports loading U-Boot to DRAM from sd/emmc/nand/qspi/spi/sata
>> >> and etc. For i.MX, imximage will generate different IVT headers according
>> >> to boot medias.
>> >>
>> >> Signed-off-by: Peng Fan <peng.fan at nxp.com>
>> >> Cc: Simon Glass <sjg at chromium.org>
>> >> Cc: Heiko Schocher <hs at denx.de>
>> >> Cc: Joe Hershberger <joe.hershberger at ni.com>
>> >> Cc: Bin Meng <bmeng.cn at gmail.com>
>> >> Cc: Christophe Ricard <christophe-h.ricard at st.com>
>> >> Cc: Nikita Kiryanov <nikita at compulab.co.il>
>> >> Cc: Francois Retief <fgretief at spaceteq.co.za>
>> >> Cc: Tom Rini <trini at konsulko.com>
>> >> ---
>> >>
>> >> V2:
>> >>  Move NOR_BOOT to the patch 1/2.
>> >>  The idea of this patch is for adding different boot media support for
>> >>  i.MXes. And I'll post out following patches if this patch is accepted.
>> >>  I ran moveconfig.py, but I did not include the results into a patch.
>> >>  This patch does not break the boards which defined NAND_BOOT/SD_BOOT and
>> >>  etc, and I prefer to let board owners to move to defconfig later.
>> >>
>> >>  common/Kconfig | 48 ++++++++++++++++++++++++++++++++++++++++++++++++
>> >>  1 file changed, 48 insertions(+)
>> >>
>> >> diff --git a/common/Kconfig b/common/Kconfig
>> >> index 04d092c..f0f6ee1 100644
>> >> --- a/common/Kconfig
>> >> +++ b/common/Kconfig
>> >> @@ -108,6 +108,54 @@ config NOR_BOOT
>> >>           as the ROM only partially sets up pinmux.  We also default to using
>> >>           NOR for environment.
>> >>
>> >> +config NAND_BOOT
>> >> +       bool "Support for booting from NAND flash"
>> >> +       default n
>> >> +       help
>> >> +         Enabling this will make a U-Boot binary that is capable of being
>> >> +         booted via NAND flash. This is not a must, some SoCs need this,
>> >> +         somes not.
>> >> +
>> >> +config ONENAND_BOOT
>> >> +       bool "Support for booting from ONENAND"
>> >> +       default n
>> >> +       help
>> >> +         Enabling this will make a U-Boot binary that is capable of being
>> >> +         booted via ONENAND. This is not a must, some SoCs need this,
>> >> +         somes not.
>> >> +
>> >> +config QSPI_BOOT
>> >> +       bool "Support for booting from QSPI flash"
>> >> +       default n
>> >> +       help
>> >> +         Enabling this will make a U-Boot binary that is capable of being
>> >> +         booted via QSPI flash. This is not a must, some SoCs need this,
>> >> +         somes not.
>> >> +
>> >> +config SATA_BOOT
>> >> +       bool "Support for booting from SATA"
>> >> +       default n
>> >> +       help
>> >> +         Enabling this will make a U-Boot binary that is capable of being
>> >> +         booted via SATA. This is not a must, some SoCs need this,
>> >> +         somes not.
>> >> +
>> >> +config SD_BOOT
>> >> +       bool "Support for booting from SD/EMMC"
>> >> +       default n
>> >> +       help
>> >> +         Enabling this will make a U-Boot binary that is capable of being
>> >> +         booted via SD/EMMC. This is not a must, some SoCs need this,
>> >> +         somes not.
>> >> +
>> >> +config SPI_BOOT
>> >> +       bool "Support for booting from SPI flash"
>> >> +       default n
>> >> +       help
>> >> +         Enabling this will make a U-Boot binary that is capable of being
>> >> +         booted via SPI flash. This is not a must, some SoCs need this,
>> >> +         somes not.
>> >> +
>> >>  endmenu
>> >
>> >
>> >Do you intend to replace
>> >CONFIG_SPL_NOR_SUPPORT
>> >CONFIG_SPL_NAND_SUPPORT
>> >CONFIG_SPL_USB_SUPPORT
>> >CONFIG_SPL_MMC_SUPPORT
>> >etc. with these options?
>> >
>> 
>> I missed these.
>> 
>> >
>> >Currently, common/spl/spl.c uses CONFIG_SPL_*_SUPPORT
>> >to enable/disable capable boot devices.
>> 
>> I think we could use a common option to replace the ones used in SPL.
>
>I'm not sure that CONFIG_xxx_BOOT and CONFIG_SPL_xxx_SUPPORT are the
>same thing.  For example, CONFIG_NOR_BOOT on am335x means "we are
>building to support booting from NOR, so include all of that stuff
>that's normally not included".  While CONFIG_SPL_NAND_SUPPORT means
>include NAND support in SPL, which is not mutually exclusive with MMC,
>etc.

ok. Then, better keep them. For i.MX6, CONFIG_XX_BOOT have the same meaning
with am335x as you said.

Do you have other comments? If not touching SPL, I would like to see this
patch set applied.

Thanks,
Peng.
>
>-- 
>Tom




More information about the U-Boot mailing list