From: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
To: barebox@lists.infradead.org
Subject: [PATCH v3] Add new ARM entry point for barebox
Date: Sun, 3 Feb 2013 16:03:33 +0100 [thread overview]
Message-ID: <20130203150333.GE18068@game.jcrosoft.org> (raw)
Third version. I update at91 and test it on all at91 core
Best Regards,
J.
Second version. I updated the series to current -next. Besides, I dropped
the board reserved memory chunk at the end of SDRAM as it does not work
for configurations which run in tight SRAM. Boards are now required to
reserve some memory themselves and skip this area from barebox_arm_entry
should they need some space.
This version is compile tested only currently. My plan is to do some
additional runtime tests on Monday when I'm back from the FOSDEM and
apply it afterwards. So I won't apply any patches conflicting to this
series before applying this one.
Sascha
The following changes since commit 531c3cd6adcea6b874772221f2f7787472550cee:
at91sam9_ddrsdr: fix register on mdr read and sdram detection for ddr size (2013-02-03 08:27:57 +0800)
are available in the git repository at:
git://git.jcrosoft.org/barebox.git delivery/arm-entry
for you to fetch changes up to cd5f8e8aaf808ae19e7c1d2890f90f7de809a2c5:
ARM pbl: inline decompress function (2013-02-03 08:27:59 +0800)
----------------------------------------------------------------
Jean-Christophe PLAGNIOL-VILLARD (3):
ARM AT91: switch at91sam9g45 to barebox_arm_entry
ARM AT91: switch at91sam9x5 to barebox_arm_entry
ARM AT91: switch at91sam9n12 to barebox_arm_entry
Sascha Hauer (33):
ARM: Add new entry point for barebox
ARM: add __noreturn to board_init_lowlevel_return
ARM i.MX: Use SRAM stack in lowlevel code
ARM i.MX: Add i.MX specific entry point for barebox
ARM i.MX: prepare external nand boot for SoC specific entry
ARM i.MX boards: switch to barebox_arm_entry
ARM MXS boards: switch to barebox_arm_entry
ARM OMAP boards: switch to barebox_arm_entry
ARM Samsung boards: switch to barebox_arm_entry
ARM PXA boards: switch to barebox_arm_entry
ARM ep93xx boards: switch to barebox_arm_entry
ARM tegra boards: switch to barebox_arm_entry
ARM nomadik boards: switch to barebox_arm_entry
ARM versatile boards: switch to barebox_arm_entry
ARM netx boards: switch to barebox_arm_entry
ARM clep7212: switch to barebox_arm_entry
ARM raspberrypi: switch to barebox_arm_entry
ARM AT91: switch at91sam9 to barebox_arm_entry part1
ARM AT91: switch at91rm9200 board to barebox_arm_entry
ARM AT91: switch sama5d3 to barebox_arm_entry
ARM: remove now unused MACH_[HAS|DO]_LOWLEVEL_INIT
ARM start-pbl: make board_init_lowlevel_return static
ARM start-pbl: call uncompressed binary with arguments
ARM start: pickup parameters from pbl
ARM: Setup stack at end of SDRAM
ARM pbl: Use dynamic parameters for early malloc space
ARM mmu: pickup already enabled mmu
ARM: Factor out early mmu code
ARM: Enable mmu early
ARM: Automatically determine malloc size
generic memory layout: fix deps for [MALLOC|STACK]_BASE
ARM: disable HAVE_CONFIGURABLE_MEMORY_LAYOUT
ARM pbl: inline decompress function
arch/arm/Kconfig | 1 -
arch/arm/boards/a9m2410/lowlevel_init.S | 9 +++++++--
arch/arm/boards/a9m2440/lowlevel_init.S | 9 +++++++--
arch/arm/boards/archosg9/Makefile | 4 ++--
arch/arm/boards/archosg9/lowlevel.c | 3 ++-
arch/arm/boards/at91sam9261ek/Makefile | 4 ++--
arch/arm/boards/at91sam9263ek/Makefile | 4 ++--
arch/arm/boards/beagle/lowlevel.c | 16 ++++++++++++++--
arch/arm/boards/beaglebone/Makefile | 2 ++
arch/arm/boards/beaglebone/lowlevel.c | 12 +++++++++++-
arch/arm/boards/ccxmx51/Makefile | 2 ++
arch/arm/boards/ccxmx51/lowlevel.c | 9 +++++++++
arch/arm/boards/chumby_falconwing/Makefile | 2 ++
arch/arm/boards/chumby_falconwing/lowlevel.c | 11 +++++++++++
arch/arm/boards/clep7212/lowlevel.c | 3 ++-
arch/arm/boards/crystalfontz-cfa10036/Makefile | 2 ++
arch/arm/boards/crystalfontz-cfa10036/lowlevel.c | 11 +++++++++++
arch/arm/boards/edb93xx/sdram_cfg.c | 4 ++++
arch/arm/boards/efika-mx-smartbook/Makefile | 2 ++
arch/arm/boards/efika-mx-smartbook/lowlevel.c | 9 +++++++++
arch/arm/boards/eukrea_cpuimx25/lowlevel.c | 6 +++---
arch/arm/boards/eukrea_cpuimx27/lowlevel_init.S | 7 ++++---
arch/arm/boards/eukrea_cpuimx35/lowlevel.c | 8 ++++----
arch/arm/boards/eukrea_cpuimx51/Makefile | 2 ++
arch/arm/boards/eukrea_cpuimx51/lowlevel.c | 9 +++++++++
arch/arm/boards/freescale-mx23-evk/Makefile | 2 ++
arch/arm/boards/freescale-mx23-evk/lowlevel.c | 11 +++++++++++
arch/arm/boards/freescale-mx25-3-stack/lowlevel_init.S | 7 ++++---
arch/arm/boards/freescale-mx28-evk/Makefile | 2 ++
arch/arm/boards/freescale-mx28-evk/lowlevel.c | 11 +++++++++++
arch/arm/boards/freescale-mx35-3-stack/3stack.c | 1 +
arch/arm/boards/freescale-mx35-3-stack/lowlevel_init.S | 7 ++++---
arch/arm/boards/freescale-mx51-pdk/Makefile | 2 ++
arch/arm/boards/freescale-mx51-pdk/lowlevel.c | 9 +++++++++
arch/arm/boards/freescale-mx53-loco/Makefile | 2 ++
arch/arm/boards/freescale-mx53-loco/lowlevel.c | 9 +++++++++
arch/arm/boards/freescale-mx53-smd/Makefile | 2 ++
arch/arm/boards/freescale-mx53-smd/lowlevel.c | 9 +++++++++
arch/arm/boards/freescale-mx6-arm2/Makefile | 2 ++
arch/arm/boards/freescale-mx6-arm2/lowlevel.c | 10 ++++++++++
arch/arm/boards/freescale-mx6-sabrelite/Makefile | 2 ++
arch/arm/boards/freescale-mx6-sabrelite/lowlevel.c | 10 ++++++++++
arch/arm/boards/friendlyarm-mini2440/lowlevel_init.S | 9 +++++++--
arch/arm/boards/friendlyarm-mini6410/Makefile | 2 ++
arch/arm/boards/friendlyarm-mini6410/lowlevel.c | 11 +++++++++++
arch/arm/boards/friendlyarm-tiny210/lowlevel.c | 4 +++-
arch/arm/boards/friendlyarm-tiny6410/Makefile | 3 ++-
arch/arm/boards/friendlyarm-tiny6410/lowlevel.c | 11 +++++++++++
arch/arm/boards/guf-cupid/lowlevel.c | 8 ++++----
arch/arm/boards/guf-neso/lowlevel.c | 8 ++++----
arch/arm/boards/guf-vincell/lowlevel.c | 5 +++--
arch/arm/boards/imx21ads/imx21ads.c | 3 ++-
arch/arm/boards/imx21ads/lowlevel_init.S | 11 ++++++++---
arch/arm/boards/imx233-olinuxino/Makefile | 2 ++
arch/arm/boards/imx233-olinuxino/lowlevel.c | 11 +++++++++++
arch/arm/boards/imx27ads/lowlevel_init.S | 4 ++--
arch/arm/boards/karo-tx25/lowlevel.c | 10 ++++++----
arch/arm/boards/karo-tx28/Makefile | 2 ++
arch/arm/boards/karo-tx28/lowlevel.c | 11 +++++++++++
arch/arm/boards/karo-tx51/Makefile | 2 ++
arch/arm/boards/karo-tx51/lowlevel.c | 9 +++++++++
arch/arm/boards/karo-tx53/lowlevel.c | 6 ++----
arch/arm/boards/mioa701/Makefile | 2 ++
arch/arm/boards/mioa701/lowlevel.c | 10 ++++++++++
arch/arm/boards/mmccpu/Makefile | 4 ++--
arch/arm/boards/netx/platform.S | 7 +++++--
arch/arm/boards/nhk8815/Makefile | 2 ++
arch/arm/boards/nhk8815/lowlevel.c | 10 ++++++++++
arch/arm/boards/omap343xdsp/lowlevel.c | 15 +++++++++++++--
arch/arm/boards/omap3evm/lowlevel.c | 13 +++++++++++--
arch/arm/boards/panda/lowlevel.c | 7 ++++---
arch/arm/boards/pcm027/lowlevel_init.S | 7 +++++--
arch/arm/boards/pcm037/lowlevel.c | 6 +++---
arch/arm/boards/pcm038/lowlevel.c | 8 +++++---
arch/arm/boards/pcm043/lowlevel.c | 8 ++++----
arch/arm/boards/pcm049/lowlevel.c | 7 ++++---
arch/arm/boards/pcm051/Makefile | 2 ++
arch/arm/boards/pcm051/lowlevel.c | 11 +++++++++++
arch/arm/boards/phycard-a-l1/lowlevel.c | 12 ++++++++++--
arch/arm/boards/phycard-a-xl2/lowlevel.c | 7 ++++---
arch/arm/boards/phycard-i.MX27/lowlevel_init.S | 4 ++--
arch/arm/boards/pm9261/Makefile | 4 ++--
arch/arm/boards/pm9263/Makefile | 4 ++--
arch/arm/boards/raspberry-pi/Makefile | 2 ++
arch/arm/boards/raspberry-pi/lowlevel.c | 11 +++++++++++
arch/arm/boards/scb9328/lowlevel_init.S | 4 ++--
arch/arm/boards/tny-a926x/Makefile | 4 ++--
arch/arm/boards/toshiba-ac100/Makefile | 2 ++
arch/arm/boards/toshiba-ac100/lowlevel.c | 10 ++++++++++
arch/arm/boards/tqma53/Makefile | 2 ++
arch/arm/boards/tqma53/lowlevel.c | 9 +++++++++
arch/arm/boards/usb-a926x/Makefile | 4 ++--
arch/arm/boards/versatile/Makefile | 3 ++-
arch/arm/boards/versatile/lowlevel.c | 10 ++++++++++
arch/arm/configs/archosg9_defconfig | 1 -
arch/arm/configs/phycard_a_l1_defconfig | 2 --
arch/arm/cpu/Makefile | 4 ++--
arch/arm/cpu/cpu.c | 12 ++++++++++++
arch/arm/cpu/mmu-early.c | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++
arch/arm/cpu/mmu-early.h | 6 ++++++
arch/arm/cpu/mmu.c | 9 ++++++++-
arch/arm/cpu/start-pbl.c | 163 +++++++++++++++++++++++++++++++++++++++++++++++++++----------------------------------------------------------------------------------------------------------------
arch/arm/cpu/start.c | 107 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------
arch/arm/include/asm/barebox-arm.h | 4 +++-
arch/arm/lib/Makefile | 1 -
arch/arm/lib/arm.c | 14 --------------
arch/arm/mach-at91/Kconfig | 19 +++++++++----------
arch/arm/mach-at91/Makefile | 11 ++++++++---
arch/arm/mach-at91/at91rm9200_lowlevel_init.c | 2 +-
arch/arm/mach-at91/at91sam9260_lowlevel_init.c | 2 ++
arch/arm/mach-at91/at91sam9261_lowlevel_init.c | 2 ++
arch/arm/mach-at91/at91sam9263_lowlevel_init.c | 2 ++
arch/arm/mach-at91/at91sam926x_lowlevel_init.c | 7 ++-----
arch/arm/mach-at91/at91sam9g45_lowlevel_init.c | 26 ++++++++++++++++++++++++++
arch/arm/mach-at91/at91sam9n12_lowlevel_init.c | 26 ++++++++++++++++++++++++++
arch/arm/mach-at91/at91sam9x5_lowlevel_init.c | 26 ++++++++++++++++++++++++++
arch/arm/mach-at91/include/mach/at91_lowlevel_init.h | 5 +++++
arch/arm/mach-at91/sama5d3_lowlevel_init.c | 25 +++++++++++++++++++++++++
arch/arm/mach-clps711x/Kconfig | 2 --
arch/arm/mach-ep93xx/Kconfig | 8 --------
arch/arm/mach-ep93xx/Makefile | 4 ++--
arch/arm/mach-ep93xx/lowlevel_init.S | 11 ++++++++++-
arch/arm/mach-imx/Kconfig | 17 -----------------
arch/arm/mach-imx/Makefile | 5 ++++-
arch/arm/mach-imx/esdctl.c | 136 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------
arch/arm/mach-imx/external-nand-boot.c | 74 ++++++++++++++++++++++++++++++++++++++++++++++++++++++--------------------
arch/arm/mach-imx/include/mach/esdctl.h | 11 +++++++++++
arch/arm/mach-imx/include/mach/imx-nand.h | 1 -
arch/arm/mach-imx/include/mach/imx21-regs.h | 1 +
arch/arm/mach-imx/include/mach/imx25-regs.h | 3 +++
arch/arm/mach-imx/include/mach/imx27-regs.h | 1 +
arch/arm/mach-imx/include/mach/imx31-regs.h | 3 +++
arch/arm/mach-netx/Kconfig | 1 -
arch/arm/mach-omap/Kconfig | 5 -----
arch/arm/mach-omap/arch-omap.dox | 1 -
arch/arm/mach-omap/include/mach/omap3-silicon.h | 1 +
arch/arm/mach-omap/omap3_core.S | 11 ++++-------
arch/arm/mach-pxa/Kconfig | 1 -
arch/arm/mach-samsung/Kconfig | 6 ------
arch/arm/pbl/zbarebox.lds.S | 8 ++++----
common/Kconfig | 21 +++++++++------------
common/meminfo.c | 5 -----
include/asm-generic/memory_layout.h | 6 ++----
143 files changed, 1064 insertions(+), 400 deletions(-)
create mode 100644 arch/arm/boards/ccxmx51/lowlevel.c
create mode 100644 arch/arm/boards/chumby_falconwing/lowlevel.c
create mode 100644 arch/arm/boards/crystalfontz-cfa10036/lowlevel.c
create mode 100644 arch/arm/boards/efika-mx-smartbook/lowlevel.c
create mode 100644 arch/arm/boards/eukrea_cpuimx51/lowlevel.c
create mode 100644 arch/arm/boards/freescale-mx23-evk/lowlevel.c
create mode 100644 arch/arm/boards/freescale-mx28-evk/lowlevel.c
create mode 100644 arch/arm/boards/freescale-mx51-pdk/lowlevel.c
create mode 100644 arch/arm/boards/freescale-mx53-loco/lowlevel.c
create mode 100644 arch/arm/boards/freescale-mx53-smd/lowlevel.c
create mode 100644 arch/arm/boards/freescale-mx6-arm2/lowlevel.c
create mode 100644 arch/arm/boards/freescale-mx6-sabrelite/lowlevel.c
create mode 100644 arch/arm/boards/friendlyarm-mini6410/lowlevel.c
create mode 100644 arch/arm/boards/friendlyarm-tiny6410/lowlevel.c
create mode 100644 arch/arm/boards/imx233-olinuxino/lowlevel.c
create mode 100644 arch/arm/boards/karo-tx28/lowlevel.c
create mode 100644 arch/arm/boards/karo-tx51/lowlevel.c
create mode 100644 arch/arm/boards/mioa701/lowlevel.c
create mode 100644 arch/arm/boards/nhk8815/lowlevel.c
create mode 100644 arch/arm/boards/pcm051/lowlevel.c
create mode 100644 arch/arm/boards/raspberry-pi/lowlevel.c
create mode 100644 arch/arm/boards/toshiba-ac100/lowlevel.c
create mode 100644 arch/arm/boards/tqma53/lowlevel.c
create mode 100644 arch/arm/boards/versatile/lowlevel.c
create mode 100644 arch/arm/cpu/mmu-early.c
create mode 100644 arch/arm/cpu/mmu-early.h
delete mode 100644 arch/arm/lib/arm.c
create mode 100644 arch/arm/mach-at91/at91sam9g45_lowlevel_init.c
create mode 100644 arch/arm/mach-at91/at91sam9n12_lowlevel_init.c
create mode 100644 arch/arm/mach-at91/at91sam9x5_lowlevel_init.c
create mode 100644 arch/arm/mach-at91/sama5d3_lowlevel_init.c
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
next reply other threads:[~2013-02-03 15:04 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-02-03 15:03 Jean-Christophe PLAGNIOL-VILLARD [this message]
2013-02-03 15:10 ` [PATCH 01/36] ARM: Add new " Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 02/36] ARM: add __noreturn to board_init_lowlevel_return Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 03/36] ARM i.MX: Use SRAM stack in lowlevel code Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 04/36] ARM i.MX: Add i.MX specific entry point for barebox Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 05/36] ARM i.MX: prepare external nand boot for SoC specific entry Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 06/36] ARM i.MX boards: switch to barebox_arm_entry Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 07/36] ARM MXS " Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 08/36] ARM OMAP " Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 09/36] ARM Samsung " Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 10/36] ARM PXA " Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 11/36] ARM ep93xx " Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 12/36] ARM tegra " Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 13/36] ARM nomadik " Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 14/36] ARM versatile " Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 15/36] ARM netx " Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 16/36] ARM clep7212: " Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 17/36] ARM raspberrypi: " Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 18/36] ARM AT91: switch at91sam9 to barebox_arm_entry part1 Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 19/36] ARM AT91: switch at91rm9200 board to barebox_arm_entry Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 20/36] ARM AT91: switch at91sam9g45 " Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 21/36] ARM AT91: switch at91sam9x5 " Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 22/36] ARM AT91: switch at91sam9n12 " Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 23/36] ARM AT91: switch sama5d3 " Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 24/36] ARM: remove now unused MACH_[HAS|DO]_LOWLEVEL_INIT Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 25/36] ARM start-pbl: make board_init_lowlevel_return static Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 26/36] ARM start-pbl: call uncompressed binary with arguments Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 27/36] ARM start: pickup parameters from pbl Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 28/36] ARM: Setup stack at end of SDRAM Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 29/36] ARM pbl: Use dynamic parameters for early malloc space Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 30/36] ARM mmu: pickup already enabled mmu Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 31/36] ARM: Factor out early mmu code Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 32/36] ARM: Enable mmu early Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 33/36] ARM: Automatically determine malloc size Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 34/36] generic memory layout: fix deps for [MALLOC|STACK]_BASE Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 35/36] ARM: disable HAVE_CONFIGURABLE_MEMORY_LAYOUT Jean-Christophe PLAGNIOL-VILLARD
2013-02-03 15:10 ` [PATCH 36/36] ARM pbl: inline decompress function Jean-Christophe PLAGNIOL-VILLARD
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130203150333.GE18068@game.jcrosoft.org \
--to=plagnioj@jcrosoft.com \
--cc=barebox@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox