[U-Boot] [PATCH v2 0/10] split tegra20 arm7 code into separate SPL
Tom Warren
TWarren at nvidia.com
Tue Jun 5 23:25:12 CEST 2012
Allen,
> -----Original Message-----
> From: Allen Martin [mailto:amartin at nvidia.com]
> Sent: Tuesday, June 05, 2012 2:20 PM
> To: Tom Warren; swarren at wwwdotorg.org; sjg at chromium.org
> Cc: u-boot at lists.denx.de
> Subject: [PATCH v2 0/10] split tegra20 arm7 code into separate SPL
>
> This patch series fixes a long standing problem with the tegra20 u-boot
> build. Tegra20 contains an ARM7TDMI boot processor and a Cortex A9 main
> processor. Prior to this patch series this was accomplished by #ifdefing
> out any armv7 code from the early boot sequence and creating a single binary
> that runs on both both the ARM7TDMI and A9. This was very fragile as
> changes to compiler options or any additions or rearranging of the early
> boot code could add additional armv7 specific code causing it to fail on the
> ARM7TDMI.
>
> This patch series pulls all the armv4t code out into a separate SPL that
> does nothing more than initialize the A9 and transfer control to it. The
> resultint SPL and armv7 u-boot are concatenated together into a single
> image.
>
>
> Changes:
> v2:
> - renamed tegra2 to tegra20 to match kernel and devicetree naming policy
> - pulled all SPL related config overrides to a separate file to clean up
> ifdefs from seabard.h
> - rebased to TOT u-boot/master and fixed a bug related to init sequence
> changes between this patch series and new EMC code
> - made u-boot.t2 target work even if CONFIG_OF is disabled
> - added back USE_PRIVATE_LIBGCC
>
> [PATCH 01/10] tegra20: rename tegra2 -> tegra20 [PATCH 02/10] tegra20: move
> tegra20 SoC code to [PATCH 03/10] mkconfig: add support for SPL CPU [PATCH
> 04/10] ARM: Fix arm720t SPL build [PATCH 05/10] tegra20: remove timer_init
> from SPL build [PATCH 06/10] ARM: add tegra20 support to arm720t [PATCH
> 07/10] tegra20: add SPL config options for seaboard [PATCH 08/10] tegra20:
> add u-boot.t2 target [PATCH 09/10] tegra20: Remove CPU init code from
> tegra20 u-boot [PATCH 10/10] tegra20: Remove armv4t build flags
>
Did you use the -C option for format-patch? I'd expect a lot of these file moves to show up as simple renames.
Tom
> .gitignore | 1 -
> Makefile | 14 -
> arch/arm/cpu/arm720t/cpu.c | 2 -
> arch/arm/cpu/arm720t/interrupts.c | 4 -
> arch/arm/cpu/arm720t/start.S | 19 +-
> arch/arm/cpu/arm720t/tegra20/Makefile | 48 -
> arch/arm/cpu/arm720t/tegra20/board.h | 25 -
> arch/arm/cpu/arm720t/tegra20/cpu.c | 259 -----
> arch/arm/cpu/arm720t/tegra20/cpu.h | 99 --
> arch/arm/cpu/arm720t/tegra20/spl.c | 133 ---
> arch/arm/cpu/armv7/start.S | 2 +
> arch/arm/cpu/armv7/tegra2/Makefile | 59 ++
> arch/arm/cpu/armv7/tegra2/ap20.c | 366 +++++++
> arch/arm/cpu/armv7/tegra2/board.c | 151 +++
> arch/arm/cpu/armv7/tegra2/clock.c | 1087
> ++++++++++++++++++++
> arch/arm/cpu/armv7/tegra2/config.mk | 35 +
> arch/arm/cpu/armv7/tegra2/crypto.c | 230 +++++
> arch/arm/cpu/armv7/tegra2/crypto.h | 36 +
> arch/arm/cpu/armv7/tegra2/emc.c | 286 +++++
> arch/arm/cpu/armv7/tegra2/funcmux.c | 200 ++++
> arch/arm/cpu/armv7/tegra2/lowlevel_init.S | 42 +
> arch/arm/cpu/armv7/tegra2/pinmux.c | 572 ++++++++++
> arch/arm/cpu/armv7/tegra2/pmu.c | 70 ++
> arch/arm/cpu/armv7/tegra2/sys_info.c | 35 +
> arch/arm/cpu/armv7/tegra2/timer.c | 111 ++
> arch/arm/cpu/armv7/tegra2/usb.c | 460 +++++++++
> arch/arm/cpu/armv7/tegra2/warmboot.c | 386 +++++++
> arch/arm/cpu/armv7/tegra2/warmboot_avp.c | 250 +++++
> arch/arm/cpu/armv7/tegra2/warmboot_avp.h | 81 ++
> arch/arm/cpu/armv7/tegra20/Makefile | 48 -
> arch/arm/cpu/armv7/tegra20/config.mk | 28 -
> arch/arm/cpu/armv7/tegra20/usb.c | 460 ---------
> arch/arm/cpu/tegra20-common/Makefile | 59 --
> arch/arm/cpu/tegra20-common/ap20.c | 110 --
> arch/arm/cpu/tegra20-common/board.c | 134 ---
> arch/arm/cpu/tegra20-common/clock.c | 1087 -----------------
> ---
> arch/arm/cpu/tegra20-common/crypto.c | 230 -----
> arch/arm/cpu/tegra20-common/crypto.h | 36 -
> arch/arm/cpu/tegra20-common/emc.c | 286 -----
> arch/arm/cpu/tegra20-common/funcmux.c | 200 ----
> arch/arm/cpu/tegra20-common/lowlevel_init.S | 42 -
> arch/arm/cpu/tegra20-common/pinmux.c | 572 ----------
> arch/arm/cpu/tegra20-common/pmu.c | 70 --
> arch/arm/cpu/tegra20-common/sys_info.c | 35 -
> arch/arm/cpu/tegra20-common/timer.c | 111 --
> arch/arm/cpu/tegra20-common/warmboot.c | 386 -------
> arch/arm/cpu/tegra20-common/warmboot_avp.c | 250 -----
> arch/arm/cpu/tegra20-common/warmboot_avp.h | 81 --
> arch/arm/include/asm/arch-tegra2/ap20.h | 109 ++
> arch/arm/include/asm/arch-tegra2/apb_misc.h | 36 +
> arch/arm/include/asm/arch-tegra2/board.h | 30 +
> arch/arm/include/asm/arch-tegra2/clk_rst.h | 147 +++
> arch/arm/include/asm/arch-tegra2/clock.h | 406 ++++++++
> arch/arm/include/asm/arch-tegra2/emc.h | 113 ++
> arch/arm/include/asm/arch-tegra2/flow.h | 36 +
> arch/arm/include/asm/arch-tegra2/funcmux.h | 69 ++
> arch/arm/include/asm/arch-tegra2/fuse.h | 39 +
> arch/arm/include/asm/arch-tegra2/gp_padctrl.h | 73 ++
> arch/arm/include/asm/arch-tegra2/gpio.h | 289 ++++++
> arch/arm/include/asm/arch-tegra2/mmc.h | 27 +
> arch/arm/include/asm/arch-tegra2/pinmux.h | 354 +++++++
> arch/arm/include/asm/arch-tegra2/pmc.h | 132 +++
> arch/arm/include/asm/arch-tegra2/pmu.h | 30 +
> arch/arm/include/asm/arch-tegra2/scu.h | 43 +
> arch/arm/include/asm/arch-tegra2/sdram_param.h | 148 +++
> arch/arm/include/asm/arch-tegra2/sys_proto.h | 35 +
> arch/arm/include/asm/arch-tegra2/tegra2.h | 86 ++
> arch/arm/include/asm/arch-tegra2/tegra2_spi.h | 76 ++
> arch/arm/include/asm/arch-tegra2/tegra_i2c.h | 164 +++
> arch/arm/include/asm/arch-tegra2/timer.h | 30 +
> arch/arm/include/asm/arch-tegra2/uart-spi-switch.h | 46 +
> arch/arm/include/asm/arch-tegra2/uart.h | 47 +
> arch/arm/include/asm/arch-tegra2/usb.h | 252 +++++
> arch/arm/include/asm/arch-tegra2/warmboot.h | 150 +++
> arch/arm/include/asm/arch-tegra20/ap20.h | 109 --
> arch/arm/include/asm/arch-tegra20/apb_misc.h | 36 -
> arch/arm/include/asm/arch-tegra20/board.h | 30 -
> arch/arm/include/asm/arch-tegra20/clk_rst.h | 147 ---
> arch/arm/include/asm/arch-tegra20/clock.h | 406 --------
> arch/arm/include/asm/arch-tegra20/emc.h | 113 --
> arch/arm/include/asm/arch-tegra20/flow.h | 36 -
> arch/arm/include/asm/arch-tegra20/funcmux.h | 69 --
> arch/arm/include/asm/arch-tegra20/fuse.h | 39 -
> arch/arm/include/asm/arch-tegra20/gp_padctrl.h | 73 --
> arch/arm/include/asm/arch-tegra20/gpio.h | 289 ------
> arch/arm/include/asm/arch-tegra20/hardware.h | 29 -
> arch/arm/include/asm/arch-tegra20/mmc.h | 27 -
> arch/arm/include/asm/arch-tegra20/pinmux.h | 354 -------
> arch/arm/include/asm/arch-tegra20/pmc.h | 132 ---
> arch/arm/include/asm/arch-tegra20/pmu.h | 30 -
> arch/arm/include/asm/arch-tegra20/scu.h | 43 -
> arch/arm/include/asm/arch-tegra20/sdram_param.h | 148 ---
> arch/arm/include/asm/arch-tegra20/sys_proto.h | 35 -
> arch/arm/include/asm/arch-tegra20/tegra2.h | 86 --
> arch/arm/include/asm/arch-tegra20/tegra2_spi.h | 76 --
> arch/arm/include/asm/arch-tegra20/tegra_i2c.h | 164 ---
> arch/arm/include/asm/arch-tegra20/timer.h | 30 -
> .../arm/include/asm/arch-tegra20/uart-spi-switch.h | 46 -
> arch/arm/include/asm/arch-tegra20/uart.h | 47 -
> arch/arm/include/asm/arch-tegra20/usb.h | 252 -----
> arch/arm/include/asm/arch-tegra20/warmboot.h | 150 ---
> board/nvidia/common/board.c | 2 -
> board/nvidia/seaboard/config.mk | 1 -
> boards.cfg | 17 +-
> doc/README.SPL | 12 -
> include/configs/seaboard.h | 6 -
> include/configs/tegra2-common.h | 21 +-
> include/configs/tegra2-spl.h | 87 --
> mkconfig | 15 +-
> spl/Makefile | 4 -
> 110 files changed, 7438 insertions(+), 7978 deletions(-)
>
--
nvpublic
More information about the U-Boot
mailing list