All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [PATCH 00/12] SPL mmc refactor and alternate boot device feature
@ 2015-10-22 12:01 Nikita Kiryanov
  2015-10-22 12:01 ` [U-Boot] [PATCH 01/12] spl: nand: remove code duplication Nikita Kiryanov
                   ` (12 more replies)
  0 siblings, 13 replies; 29+ messages in thread
From: Nikita Kiryanov @ 2015-10-22 12:01 UTC (permalink / raw)
  To: u-boot

This series has two parts: patches 1-7 perform refactors aimed at reducing the
ifdef complexity of SPL mmc code (and some nand as well). This refactor also
addresses a few design issues I noticed while working on the refactor.

The rest of the series introduces a new SPL feature that allows board code to
define a list of boot devices that SPL will try before failing (instead of the
only one device it attempts now). This feature is useful for implementing
fallbacks, as well as reacting to bootROM sequences. For example:

On CM-FX6, if boot from the alternate boot device (MMC) fails, the bootROM
proceeds to try boot from SPI flash. If the SPI flash boot is succesful, SPL
will still try to load U-Boot from MMC, instead of from the actual boot device
(SPI flash), and probably fail and hang. The alternate boot feature makes it
possible for SPL to follow the MMC boot attempt with boot from the SPI flash.
The CM-FX6 based miniature PC Utilite depends on this capability for its SPI
flash boot to work, since SPI flash boot is only attempted if MMC boot fails.

This series was tested on CM-FX6 and compile tested for arm and powerpc.

Cc: Igor Grinberg <grinberg@compulab.co.il>
Cc: Tom Rini <trini@konsulko.com>
Cc: Pantelis Antoniou <panto@antoniou-consulting.com>

Nikita Kiryanov (12):
  spl: nand: remove code duplication
  spl: mmc: add break statements in spl_mmc_load_image()
  spl: mmc: refactor device location code to its own function
  spl: mmc: remove #ifdef CONFIG_SPL_OS_BOOT check
  spl: mmc: get rid of #ifdef CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION
    check
  spl: mmc: move fs boot into its own function
  spl: mmc: get rid of emmc boot code duplication
  spl: change return values of spl_*_load_image()
  common: spl: move image load to its own function
  spl: add support for alternative boot device
  spl: announce boot devices
  arm: mx6: cm-fx6: define fallback boot devices for spl

 arch/arm/cpu/armv7/sunxi/board.c |   4 +-
 arch/arm/include/asm/spl.h       |   2 +-
 board/compulab/cm_fx6/spl.c      |  19 +--
 common/spl/spl.c                 | 191 ++++++++++++++++++++++------
 common/spl/spl_ext.c             |   6 +
 common/spl/spl_fat.c             |   6 +
 common/spl/spl_mmc.c             | 263 +++++++++++++++++++++++----------------
 common/spl/spl_nand.c            |  47 ++++---
 common/spl/spl_net.c             |   9 +-
 common/spl/spl_nor.c             |   6 +-
 common/spl/spl_onenand.c         |   4 +-
 common/spl/spl_sata.c            |  11 +-
 common/spl/spl_usb.c             |  17 ++-
 common/spl/spl_ymodem.c          |   5 +-
 drivers/mtd/spi/spi_spl_load.c   |  17 ++-
 include/configs/cm_fx6.h         |   1 -
 include/spl.h                    |  18 +--
 17 files changed, 414 insertions(+), 212 deletions(-)

-- 
1.9.1

^ permalink raw reply	[flat|nested] 29+ messages in thread

end of thread, other threads:[~2015-10-23 14:11 UTC | newest]

Thread overview: 29+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-10-22 12:01 [U-Boot] [PATCH 00/12] SPL mmc refactor and alternate boot device feature Nikita Kiryanov
2015-10-22 12:01 ` [U-Boot] [PATCH 01/12] spl: nand: remove code duplication Nikita Kiryanov
2015-10-22 18:11   ` Scott Wood
2015-10-22 12:01 ` [U-Boot] [PATCH 02/12] spl: mmc: add break statements in spl_mmc_load_image() Nikita Kiryanov
2015-10-22 12:37   ` Hans de Goede
2015-10-22 13:08     ` Nikita Kiryanov
2015-10-22 13:23       ` Hans de Goede
2015-10-22 13:53         ` Nikita Kiryanov
2015-10-22 12:01 ` [U-Boot] [PATCH 03/12] spl: mmc: refactor device location code to its own function Nikita Kiryanov
2015-10-22 12:42   ` Hans de Goede
2015-10-22 14:15     ` Nikita Kiryanov
2015-10-22 12:01 ` [U-Boot] [PATCH 04/12] spl: mmc: remove #ifdef CONFIG_SPL_OS_BOOT check Nikita Kiryanov
2015-10-22 12:44   ` Hans de Goede
2015-10-22 12:01 ` [U-Boot] [PATCH 05/12] spl: mmc: get rid of #ifdef CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION check Nikita Kiryanov
2015-10-22 12:47   ` Hans de Goede
2015-10-22 13:40     ` Nikita Kiryanov
2015-10-22 13:49       ` Tom Rini
2015-10-23  9:40         ` Nikita Kiryanov
2015-10-23 14:03           ` Hans de Goede
2015-10-23 14:11             ` Tom Rini
2015-10-22 12:01 ` [U-Boot] [PATCH 06/12] spl: mmc: move fs boot into its own function Nikita Kiryanov
2015-10-22 12:01 ` [U-Boot] [PATCH 07/12] spl: mmc: get rid of emmc boot code duplication Nikita Kiryanov
2015-10-22 12:01 ` [U-Boot] [PATCH 08/12] spl: change return values of spl_*_load_image() Nikita Kiryanov
2015-10-22 12:01 ` [U-Boot] [PATCH 09/12] common: spl: move image load to its own function Nikita Kiryanov
2015-10-22 12:01 ` [U-Boot] [PATCH 10/12] spl: add support for alternative boot device Nikita Kiryanov
2015-10-22 12:01 ` [U-Boot] [PATCH 11/12] spl: announce boot devices Nikita Kiryanov
2015-10-22 12:01 ` [U-Boot] [PATCH 12/12] arm: mx6: cm-fx6: define fallback boot devices for spl Nikita Kiryanov
2015-10-22 12:24 ` [U-Boot] [PATCH 00/12] SPL mmc refactor and alternate boot device feature Otavio Salvador
2015-10-23  9:46   ` Nikita Kiryanov

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.