All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [PATCH v2 0/18] ARM: SPL: Make more generic, merge DaVinci and OMAP
@ 2012-08-20 16:45 Tom Rini
  2012-08-20 16:45 ` [U-Boot] [PATCH v2 01/18] Makefile: Move SPL files to clobber, remove from clean Tom Rini
                   ` (17 more replies)
  0 siblings, 18 replies; 42+ messages in thread
From: Tom Rini @ 2012-08-20 16:45 UTC (permalink / raw)
  To: u-boot

Hey all,

The following patch series merges the davinci and omap-common SPL
frameworks into a single framework, CONFIG_SPL_FRAMEWORK along with a
few small cleanups to the code to make it a little smaller and more
flexible.  The end result is that davinci can now opt in on
SPL-boots-Linux by just setting the right defines and other platforms
would just need to adapt to this framework.  In my testing, davinci
gains between 300 and 700 bytes for this (not enabling the SPL OS
feature) and omap4/5/etc lose just a little bit (from the printf->puts
changes).  I've tested this on omap3_beagle (xM and classic) and
omap4_panda.  I don't have any davinci platforms that were previously
using SPL so I can't boot-test those changes but since everyone sets
CONFIG_SPL_MAX_SIZE, we're OK in that department.

To make this series easier to test I've placed it on
http://github.com/trini/u-boot WIP/spl-improvements

I've looked a little into re-reducing the size and the biggest problem I
see is that SPI a lot of informational prints that we don't need,
strictly speaking, but are nice in a normal U-Boot context.  I'm unsure
of the best way to quiet these as I don't like the idea of sprinkling
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54303 and I'm sending
another email to discuss that.

Oh, and I've switched to using patman for this series now, please let me know
if I made the tool do something silly :)

--
Tom

Changes in v2:
- Add CONFIG_SYS_SPL_MALLOC_START / SIZE defines from Christian Riesch
- Add arch/arm/cpu/arm926ejs/davinci/config.mk to build u-boot.ais
- Fix checkpatch warning (u32* boot_params_ptr -> u32 *boot_params_ptr)
- Place files into common/spl (due to gcc bug #54303) and include/spl.h
- Reorder all of the patches that used to follow this to precede.

Tom Rini (18):
  Makefile: Move SPL files to clobber, remove from clean
  spl_mmc: Make FAT checks / calls guarded with CONFIG_SPL_FAT_SUPPORT
  omap-common: SPL: Add CONFIG_SPL_DISPLAY_PRINT / spl_display_print()
  omap-common: Fix typo in save_boot_params() in lowlevel_init.S
  ARM: SPL: Rename omap_boot_device to spl_boot_device
  ARM: SPL: Rename omap_boot_mode to spl_boot_mode()
  ARM: SPL: Remove NAND_MODE_HW_ECC from spl_nand.c
  ARM: SPL: Only call mem_malloc_init if configured
  ARM: SPL: Add <asm/spl.h> and <asm/arch/spl.h>
  ARM: SPL: Make spl_mmc.c more generic
  ARM: SPL: Clean up spl.c / spl_nand.c slightly
  ARM: SPL: Start hooking in the current SPI SPL support
  ARM: SPL: Move gpmc_init() to spl_board_init()
  SPL: Move the omap SPL framework to common/spl
  ARM: SPL: Convert davinci to CONFIG_SPL_FRAMEWORK
  da850_am18xxevm: Add README.da850_am18xxevm
  SPL: Enhance drivers/mtd/nand/nand_spl_load.c
  SPL: Enhance spi_spl_load to match the other load functions

 Makefile                                           |   12 +--
 README                                             |    9 ++
 arch/arm/cpu/arm926ejs/davinci/config.mk           |   16 +++
 arch/arm/cpu/arm926ejs/davinci/spl.c               |   47 ++-------
 arch/arm/cpu/armv7/am33xx/board.c                  |    2 +-
 arch/arm/cpu/armv7/omap-common/Makefile            |   13 ---
 arch/arm/cpu/armv7/omap-common/boot-common.c       |   27 ++++-
 arch/arm/cpu/armv7/omap-common/hwinit-common.c     |    7 +-
 arch/arm/cpu/armv7/omap-common/lowlevel_init.S     |    6 +-
 arch/arm/cpu/armv7/omap-common/spl_nand.c          |  111 --------------------
 arch/arm/cpu/armv7/omap3/board.c                   |   28 +++--
 arch/arm/include/asm/arch-am33xx/spl.h             |   31 ++++++
 arch/arm/include/asm/arch-davinci/spl.h            |   28 +++++
 arch/arm/include/asm/arch-omap3/spl.h              |   34 ++++++
 arch/arm/include/asm/arch-omap4/spl.h              |   35 ++++++
 arch/arm/include/asm/arch-omap4/sys_proto.h        |    1 -
 arch/arm/include/asm/arch-omap5/spl.h              |   35 ++++++
 arch/arm/include/asm/arch-omap5/sys_proto.h        |    1 -
 arch/arm/include/asm/omap_common.h                 |   77 --------------
 arch/arm/include/asm/spl.h                         |   29 +++++
 board/davinci/da8xxevm/README.da850_am18xxevm      |   53 ++++++++++
 board/overo/overo.c                                |   10 --
 common/spl/Makefile                                |   37 +++++++
 .../arm/cpu/armv7/omap-common => common/spl}/spl.c |   43 ++++----
 .../armv7/omap-common => common/spl}/spl_ymodem.c  |    3 +-
 doc/README.SPL                                     |    1 -
 drivers/mmc/Makefile                               |    5 +
 .../armv7/omap-common => drivers/mmc}/spl_mmc.c    |   24 ++---
 drivers/mtd/nand/Makefile                          |    7 +-
 drivers/mtd/nand/nand_spl_load.c                   |   89 +++++++++++-----
 drivers/mtd/spi/spi_spl_load.c                     |   23 ++--
 include/configs/am335x_evm.h                       |    1 +
 include/configs/am3517_crane.h                     |    2 +
 include/configs/am3517_evm.h                       |    2 +
 include/configs/cam_enc_4xx.h                      |    3 +-
 include/configs/da850evm.h                         |    5 +
 include/configs/devkit8000.h                       |    1 +
 include/configs/hawkboard.h                        |    3 +-
 include/configs/mcx.h                              |    2 +
 include/configs/omap3_beagle.h                     |    1 +
 include/configs/omap3_evm_common.h                 |    1 +
 include/configs/omap3_overo.h                      |    1 +
 include/configs/omap4_common.h                     |    2 +
 include/configs/omap5_evm.h                        |    2 +
 include/configs/tam3517-common.h                   |    2 +
 include/configs/tricorder.h                        |    1 +
 include/spl.h                                      |   69 ++++++++++++
 spl/Makefile                                       |    1 +
 48 files changed, 588 insertions(+), 355 deletions(-)
 create mode 100644 arch/arm/cpu/arm926ejs/davinci/config.mk
 delete mode 100644 arch/arm/cpu/armv7/omap-common/spl_nand.c
 create mode 100644 arch/arm/include/asm/arch-am33xx/spl.h
 create mode 100644 arch/arm/include/asm/arch-davinci/spl.h
 create mode 100644 arch/arm/include/asm/arch-omap3/spl.h
 create mode 100644 arch/arm/include/asm/arch-omap4/spl.h
 create mode 100644 arch/arm/include/asm/arch-omap5/spl.h
 create mode 100644 arch/arm/include/asm/spl.h
 create mode 100644 board/davinci/da8xxevm/README.da850_am18xxevm
 create mode 100644 common/spl/Makefile
 rename {arch/arm/cpu/armv7/omap-common => common/spl}/spl.c (87%)
 rename {arch/arm/cpu/armv7/omap-common => common/spl}/spl_ymodem.c (96%)
 rename {arch/arm/cpu/armv7/omap-common => drivers/mmc}/spl_mmc.c (91%)
 create mode 100644 include/spl.h

-- 
1.7.9.5

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

end of thread, other threads:[~2012-08-24 22:56 UTC | newest]

Thread overview: 42+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-08-20 16:45 [U-Boot] [PATCH v2 0/18] ARM: SPL: Make more generic, merge DaVinci and OMAP Tom Rini
2012-08-20 16:45 ` [U-Boot] [PATCH v2 01/18] Makefile: Move SPL files to clobber, remove from clean Tom Rini
2012-08-20 16:45 ` [U-Boot] [PATCH v2 02/18] spl_mmc: Make FAT checks / calls guarded with CONFIG_SPL_FAT_SUPPORT Tom Rini
2012-08-20 16:45 ` [U-Boot] [PATCH v2 03/18] omap-common: SPL: Add CONFIG_SPL_DISPLAY_PRINT / spl_display_print() Tom Rini
2012-08-20 16:45 ` [U-Boot] [PATCH v2 04/18] omap-common: Fix typo in save_boot_params() in lowlevel_init.S Tom Rini
2012-08-20 16:45 ` [U-Boot] [PATCH v2 05/18] ARM: SPL: Rename omap_boot_device to spl_boot_device Tom Rini
2012-08-20 16:45 ` [U-Boot] [PATCH v2 06/18] ARM: SPL: Rename omap_boot_mode to spl_boot_mode() Tom Rini
2012-08-20 16:45 ` [U-Boot] [PATCH v2 07/18] ARM: SPL: Remove NAND_MODE_HW_ECC from spl_nand.c Tom Rini
2012-08-20 16:45 ` [U-Boot] [PATCH v2 08/18] ARM: SPL: Only call mem_malloc_init if configured Tom Rini
2012-08-20 16:45 ` [U-Boot] [PATCH v2 09/18] ARM: SPL: Add <asm/spl.h> and <asm/arch/spl.h> Tom Rini
2012-08-20 16:45 ` [U-Boot] [PATCH v2 10/18] ARM: SPL: Make spl_mmc.c more generic Tom Rini
2012-08-20 16:45 ` [U-Boot] [PATCH v2 11/18] ARM: SPL: Clean up spl.c / spl_nand.c slightly Tom Rini
2012-08-20 16:45 ` [U-Boot] [PATCH v2 12/18] ARM: SPL: Start hooking in the current SPI SPL support Tom Rini
2012-08-20 16:45 ` [U-Boot] [PATCH v2 13/18] ARM: SPL: Move gpmc_init() to spl_board_init() Tom Rini
2012-08-20 16:45 ` [U-Boot] [PATCH v2 14/18] SPL: Move the omap SPL framework to common/spl Tom Rini
2012-08-20 16:45 ` [U-Boot] [PATCH v2 15/18] ARM: SPL: Convert davinci to CONFIG_SPL_FRAMEWORK Tom Rini
2012-08-22 10:04   ` Christian Riesch
2012-08-22 10:13     ` Prabhakar Lad
2012-08-22 17:46     ` Tom Rini
2012-08-22 19:19       ` Tom Rini
2012-08-22 23:14         ` Tom Rini
2012-08-20 16:45 ` [U-Boot] [PATCH v2 16/18] da850_am18xxevm: Add README.da850_am18xxevm Tom Rini
2012-08-21  5:09   ` Prabhakar Lad
2012-08-21 15:34     ` Tom Rini
2012-08-22  4:46       ` Prabhakar Lad
2012-08-22  6:28         ` Tom Rini
2012-08-22  8:13   ` Christian Riesch
2012-08-22  9:07     ` Prabhakar Lad
2012-08-22  9:17       ` Christian Riesch
2012-08-22 10:05         ` Prabhakar Lad
2012-08-22 15:09           ` Christian Riesch
2012-08-23  4:51             ` Prabhakar Lad
2012-08-22 17:44           ` Tom Rini
2012-08-22 17:37     ` Tom Rini
2012-08-20 16:45 ` [U-Boot] [PATCH v2 17/18] SPL: Enhance drivers/mtd/nand/nand_spl_load.c Tom Rini
2012-08-24 21:09   ` Scott Wood
2012-08-24 21:10     ` Scott Wood
2012-08-24 21:17       ` Tom Rini
2012-08-24 21:20     ` Tom Rini
2012-08-24 21:30       ` Scott Wood
2012-08-24 22:56         ` Tom Rini
2012-08-20 16:45 ` [U-Boot] [PATCH v2 18/18] SPL: Enhance spi_spl_load to match the other load functions Tom Rini

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.