ARM: tegra: add core Tegra186 support
authorStephen Warren <swarren@nvidia.com>
Thu, 12 May 2016 19:32:55 +0000 (13:32 -0600)
committerTom Warren <twarren@nvidia.com>
Tue, 31 May 2016 18:22:59 +0000 (11:22 -0700)
commitc7ba99c8c18a606b95a89366bc4fd94a8295772f
tree98077cb630848629d5b69e7e29029ae3cb6f4cab
parent39f633320c569a5d975d2d051ff2683db27bd021
ARM: tegra: add core Tegra186 support

This adds the bare minimum code to support Tegra186, with UART and eMMC
working.

The empty gpio.h is required because <asm/gpio.h> includes it. A future
cleanup round may be able to solve this for all Tegra generations at once.

mach-tegra/Makefile is adjusted not to compile anything for Tegra186, but
instead to defer everything to mach-tegra/tegra186/Makefile. This allows
the SoC code to pick-and-choose which of the C files in the "common"
mach-tegra/ directory to compile in based on the SoC's needs. Most of the
code is not valid for Tegra186, and this approach removes the need for
mach-tegra/Makefile to contain many SoC-specific ifdefs. This approach
may be applied to all other Tegra SoCs in a future cleanup round.

board186.c is introduced to replace board.c and board2.c. These files
currently contain a slew of SoC- and board-specific code that is not
valid for Tegra186. This approach avoids adding yet more ifdefs to those
files. A future cleanup round may refactor most of board*.c into board-/
SoC-specific functions files thus allowing the top-level functions like
board_init_early_f to be shared again.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
arch/arm/dts/tegra186.dtsi [new file with mode: 0644]
arch/arm/include/asm/arch-tegra186/gpio.h [new file with mode: 0644]
arch/arm/include/asm/arch-tegra186/tegra.h [new file with mode: 0644]
arch/arm/mach-tegra/Kconfig
arch/arm/mach-tegra/Makefile
arch/arm/mach-tegra/board186.c [new file with mode: 0644]
arch/arm/mach-tegra/tegra186/Kconfig [new file with mode: 0644]
arch/arm/mach-tegra/tegra186/Makefile [new file with mode: 0644]
include/configs/tegra186-common.h [new file with mode: 0644]