
On Tegra2 the AVP runs the normal U-Boot code to a point, then halts and the A9 takes over. The current Tegra2 boot path is fairly complex, since it has a separate path and code for the Cortex-A9 and the AVP. In fact, they can largely execute the same code path.
This series cleans up this logic and removes some parallel and un-needed code.
Changes in v2: - Move Makefile armv4t flags from arch/arm/lib to Tegra's config.mk - Keep Tegra's config.mk file around so we can set the armv4t flags
Changes in v3: - Update comment and also make it match style - Fix cpu_init_cp15() name - Remove exporting of cpu_init_cp15() from start.S - Add test for ARMv7 CPU and skip CP15 init if not found - Add lowlevel_init function back in (though it does nothing) - Remove later CP15 init in board.c since this is not needed now - Rebase against master (due to CONFIG_SYS_CACHELINE_SIZE series)
Simon Glass (8): tegra2: Add arch_cpu_init() to fire up Cortex-A9 tegra2: Simplify tegra_start() boot path arm: Only do CP15 init on ARMv7 tegra2: Remove unneeded boot code tegra2: Remove unneeded config option tegra2: Remove unused low-level Tegra2 UART code tegra2: Remove unneeded 'dynamic ram size' message tegra2: Don't use board pointer before it is set up
arch/arm/cpu/armv7/start.S | 57 ++++++-------- arch/arm/cpu/armv7/tegra2/Makefile | 5 + arch/arm/cpu/armv7/tegra2/ap20.c | 54 +++++++------ arch/arm/cpu/armv7/tegra2/ap20.h | 10 +-- arch/arm/cpu/armv7/tegra2/board.c | 35 ++++----- arch/arm/cpu/armv7/tegra2/config.mk | 7 +- arch/arm/cpu/armv7/tegra2/lowlevel_init.S | 115 +---------------------------- board/nvidia/common/board.c | 3 - board/nvidia/common/board.h | 1 - drivers/serial/Makefile | 1 - drivers/serial/serial_tegra2.c | 77 ------------------- drivers/serial/serial_tegra2.h | 29 ------- include/configs/tegra2-common.h | 5 +- 13 files changed, 86 insertions(+), 313 deletions(-) delete mode 100644 drivers/serial/serial_tegra2.c delete mode 100644 drivers/serial/serial_tegra2.h