[U-Boot] [PATCH 1/2] ARM: tegra: add core Tegra186 support
Simon Glass
sjg at chromium.org
Thu May 19 06:02:20 CEST 2016
On 12 May 2016 at 13:32, Stephen Warren <swarren at wwwdotorg.org> wrote:
> From: Stephen Warren <swarren at nvidia.com>
>
> 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 at nvidia.com>
> ---
> This patch series depends on the following at compile time:
> * gpio: add Tegra186 GPIO driver
> * mmc: tegra: add basic Tegra186 support
>
> ... and the following only at run time:
> * dm: allow setting driver_data before/during bind
>
> arch/arm/dts/tegra186.dtsi | 56 +++++++++++++++++++++++
> arch/arm/include/asm/arch-tegra186/gpio.h | 10 +++++
> arch/arm/include/asm/arch-tegra186/tegra.h | 16 +++++++
> arch/arm/mach-tegra/Kconfig | 6 +++
> arch/arm/mach-tegra/Makefile | 3 ++
> arch/arm/mach-tegra/board186.c | 55 +++++++++++++++++++++++
> arch/arm/mach-tegra/tegra186/Kconfig | 15 +++++++
> arch/arm/mach-tegra/tegra186/Makefile | 8 ++++
> include/configs/tegra186-common.h | 71 ++++++++++++++++++++++++++++++
> 9 files changed, 240 insertions(+)
> create mode 100644 arch/arm/dts/tegra186.dtsi
> create mode 100644 arch/arm/include/asm/arch-tegra186/gpio.h
> create mode 100644 arch/arm/include/asm/arch-tegra186/tegra.h
> create mode 100644 arch/arm/mach-tegra/board186.c
> create mode 100644 arch/arm/mach-tegra/tegra186/Kconfig
> create mode 100644 arch/arm/mach-tegra/tegra186/Makefile
> create mode 100644 include/configs/tegra186-common.h
Reviewed-by: Simon Glass <sjg at chromium.org>
Strange use of floating point!
More information about the U-Boot
mailing list