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>
This commit is contained in:

committed by
Tom Warren

parent
39f633320c
commit
c7ba99c8c1
10
arch/arm/include/asm/arch-tegra186/gpio.h
Normal file
10
arch/arm/include/asm/arch-tegra186/gpio.h
Normal file
@@ -0,0 +1,10 @@
|
||||
/*
|
||||
* Copyright (c) 2016, NVIDIA CORPORATION.
|
||||
*
|
||||
* SPDX-License-Identifier: GPL-2.0
|
||||
*/
|
||||
|
||||
#ifndef _TEGRA186_GPIO_H_
|
||||
#define _TEGRA186_GPIO_H_
|
||||
|
||||
#endif
|
16
arch/arm/include/asm/arch-tegra186/tegra.h
Normal file
16
arch/arm/include/asm/arch-tegra186/tegra.h
Normal file
@@ -0,0 +1,16 @@
|
||||
/*
|
||||
* (C) Copyright 2013-2016, NVIDIA CORPORATION.
|
||||
*
|
||||
* SPDX-License-Identifier: GPL-2.0
|
||||
*/
|
||||
|
||||
#ifndef _TEGRA186_TEGRA_H_
|
||||
#define _TEGRA186_TEGRA_H_
|
||||
|
||||
#define GICD_BASE 0x03881000 /* Generic Int Cntrlr Distrib */
|
||||
#define GICC_BASE 0x03882000 /* Generic Int Cntrlr CPU I/F */
|
||||
#define NV_PA_SDRAM_BASE 0x80000000
|
||||
|
||||
#include <asm/arch-tegra/tegra.h>
|
||||
|
||||
#endif
|
Reference in New Issue
Block a user