mail archive of the barebox mailing list
 help / color / mirror / Atom feed
* [PATCH] barebox multi image support
@ 2013-06-25  9:20 Sascha Hauer
  2013-06-25  9:20 ` [PATCH 01/12] ARM: split barebox_arm_head in two separate functions Sascha Hauer
                   ` (13 more replies)
  0 siblings, 14 replies; 17+ messages in thread
From: Sascha Hauer @ 2013-06-25  9:20 UTC (permalink / raw)
  To: barebox

This series adds support for generating multiple images from a single
barebox binary. This helps when for example boards come with different
SDRAM setups. Instead of having a config for each SDRAM setup we only
have a single configuration, but generate multiple images from it.

The basic idea behind this is using a PBL. As of now the PBL on ARM
has a single entrypoint: barebox_arm_entry. With multi image support
instead we have many entrypoints in the PBL. The correct one will
be chosen by the linker when generating a particular image. The PBLs
can also contain a devicetree which is passed to the regular barebox
image. This opens up the way to a true multi board barebox.

Additionally each PBL/barebox combination can be encapsulated into a
SoC specific image so that the different requirements for the boards
booting a image can be met.

This series adds the make infrastructure and converts a few boards
over to use it.

Sascha

----------------------------------------------------------------
Sascha Hauer (12):
      ARM: split barebox_arm_head in two separate functions
      ARM: pbl: move linker script to lib
      ARM: build dtbs unconditionally
      ARM: Add image end section
      imx-image: fix path to imx-image binary
      Add multi images support
      ARM: i.MX: Add multi images support Makefile
      ARM: i.MX27 pcm038: switch to multi image
      ARM: i.MX53 loco: Switch to imximage
      ARM: i.MX53 loco: Switch to multi image support
      ARM: dmo realq7: switch to multi image support
      ARM: i.MX51 babbage: switch to multi image support

 Makefile                                           |   8 ++
 arch/arm/Makefile                                  |   2 +-
 arch/arm/boards/dmo-mx6-realq7/lowlevel.c          |  12 +-
 arch/arm/boards/freescale-mx51-pdk/lowlevel.c      |  14 ++-
 arch/arm/boards/freescale-mx53-loco/Makefile       |   4 +-
 arch/arm/boards/freescale-mx53-loco/board.c        |   8 +-
 arch/arm/boards/freescale-mx53-loco/dcd-data.h     |  54 ---------
 .../boards/freescale-mx53-loco/flash-header.imxcfg |  54 +++++++++
 arch/arm/boards/freescale-mx53-loco/flash_header.c |  52 ---------
 arch/arm/boards/freescale-mx53-loco/lowlevel.c     |  14 ++-
 arch/arm/boards/pcm038/lowlevel.c                  |   4 +-
 arch/arm/cpu/Makefile                              |   4 +-
 arch/arm/cpu/start-images.c                        |  49 ++++++++
 arch/arm/cpu/uncompress.c                          | 108 ++++++++++++++++++
 arch/arm/dts/Makefile                              |   4 +
 arch/arm/include/asm/barebox-arm-head.h            |  14 ++-
 arch/arm/include/asm/barebox-arm.h                 |   4 +
 arch/arm/{pbl/zbarebox.lds.S => lib/pbl.lds.S}     |   9 +-
 arch/arm/lib/runtime-offset.S                      |   3 +
 arch/arm/mach-imx/Kconfig                          |   7 +-
 arch/arm/pbl/Makefile                              |   5 +-
 images/Makefile                                    | 124 +++++++++++++++++++++
 images/Makefile.imx                                |  36 ++++++
 include/asm-generic/sections.h                     |   1 +
 pbl/Kconfig                                        |  16 +++
 scripts/Makefile.lib                               |   2 +-
 26 files changed, 481 insertions(+), 131 deletions(-)
 delete mode 100644 arch/arm/boards/freescale-mx53-loco/dcd-data.h
 create mode 100644 arch/arm/boards/freescale-mx53-loco/flash-header.imxcfg
 delete mode 100644 arch/arm/boards/freescale-mx53-loco/flash_header.c
 create mode 100644 arch/arm/cpu/start-images.c
 create mode 100644 arch/arm/cpu/uncompress.c
 rename arch/arm/{pbl/zbarebox.lds.S => lib/pbl.lds.S} (93%)
 create mode 100644 images/Makefile
 create mode 100644 images/Makefile.imx

_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

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

end of thread, other threads:[~2013-06-26  5:28 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-06-25  9:20 [PATCH] barebox multi image support Sascha Hauer
2013-06-25  9:20 ` [PATCH 01/12] ARM: split barebox_arm_head in two separate functions Sascha Hauer
2013-06-25  9:20 ` [PATCH 02/12] ARM: pbl: move linker script to lib Sascha Hauer
2013-06-25  9:20 ` [PATCH 03/12] ARM: build dtbs unconditionally Sascha Hauer
2013-06-25  9:20 ` [PATCH 04/12] ARM: Add image end section Sascha Hauer
2013-06-25  9:20 ` [PATCH 05/12] imx-image: fix path to imx-image binary Sascha Hauer
2013-06-25  9:20 ` [PATCH 06/12] Add multi images support Sascha Hauer
2013-06-25  9:20 ` [PATCH 07/12] ARM: i.MX: Add multi images support Makefile Sascha Hauer
2013-06-25  9:20 ` [PATCH 08/12] ARM: i.MX27 pcm038: switch to multi image Sascha Hauer
2013-06-25  9:20 ` [PATCH 09/12] ARM: i.MX53 loco: Switch to imximage Sascha Hauer
2013-06-25  9:20 ` [PATCH 10/12] ARM: i.MX53 loco: Switch to multi image support Sascha Hauer
2013-06-25  9:20 ` [PATCH 11/12] ARM: dmo realq7: switch " Sascha Hauer
2013-06-25  9:20 ` [PATCH 12/12] ARM: i.MX51 babbage: " Sascha Hauer
2013-06-25  9:26 ` [PATCH] barebox " Sascha Hauer
2013-06-26  5:27 ` Sascha Hauer
2013-06-26  5:27   ` [PATCH 1/2] ARM: Allow to pass a devicetree via boarddata Sascha Hauer
2013-06-26  5:27   ` [PATCH 2/2] ARM: dts: Add .S files as secondary target Sascha Hauer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox