mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-18 10:48:51 +00:00
140a9eaff1
Implementations of the standard clock and reset APIs are available on all Tegra SoCs now, so enable compilation of those uclasses. Enable the Tegra CAR drivers for all SoCs prior to the BPMP being available. This provides an implementation of those APIs everywhere. Signed-off-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Tom Warren <twarren@nvidia.com>
125 lines
2.7 KiB
Text
125 lines
2.7 KiB
Text
if TEGRA
|
|
|
|
config SPL_GPIO_SUPPORT
|
|
default y
|
|
|
|
config SPL_LIBCOMMON_SUPPORT
|
|
default y
|
|
|
|
config SPL_LIBGENERIC_SUPPORT
|
|
default y
|
|
|
|
config SPL_SERIAL_SUPPORT
|
|
default y
|
|
|
|
config TEGRA_IVC
|
|
bool "Tegra IVC protocol"
|
|
help
|
|
IVC (Inter-VM Communication) protocol is a Tegra-specific IPC
|
|
(Inter Processor Communication) framework. Within the context of
|
|
U-Boot, it is typically used for communication between the main CPU
|
|
and various auxiliary processors.
|
|
|
|
config TEGRA_COMMON
|
|
bool "Tegra common options"
|
|
select CLK
|
|
select DM
|
|
select DM_ETH
|
|
select DM_GPIO
|
|
select DM_I2C
|
|
select DM_KEYBOARD
|
|
select DM_MMC
|
|
select DM_PCI
|
|
select DM_PCI_COMPAT
|
|
select DM_PWM
|
|
select DM_RESET
|
|
select DM_SERIAL
|
|
select DM_SPI
|
|
select DM_SPI_FLASH
|
|
select MISC
|
|
select OF_CONTROL
|
|
select VIDCONSOLE_AS_LCD if DM_VIDEO
|
|
|
|
config TEGRA_NO_BPMP
|
|
bool "Tegra common options for SoCs without BPMP"
|
|
select TEGRA_CAR
|
|
select TEGRA_CAR_CLOCK
|
|
select TEGRA_CAR_RESET
|
|
|
|
config TEGRA_ARMV7_COMMON
|
|
bool "Tegra 32-bit common options"
|
|
select CPU_V7
|
|
select SPL
|
|
select SUPPORT_SPL
|
|
select TEGRA_COMMON
|
|
select TEGRA_GPIO
|
|
select TEGRA_NO_BPMP
|
|
|
|
config TEGRA_ARMV8_COMMON
|
|
bool "Tegra 64-bit common options"
|
|
select ARM64
|
|
select TEGRA_COMMON
|
|
|
|
choice
|
|
prompt "Tegra SoC select"
|
|
optional
|
|
|
|
config TEGRA20
|
|
bool "Tegra20 family"
|
|
select TEGRA_ARMV7_COMMON
|
|
|
|
config TEGRA30
|
|
bool "Tegra30 family"
|
|
select TEGRA_ARMV7_COMMON
|
|
|
|
config TEGRA114
|
|
bool "Tegra114 family"
|
|
select TEGRA_ARMV7_COMMON
|
|
|
|
config TEGRA124
|
|
bool "Tegra124 family"
|
|
select TEGRA_ARMV7_COMMON
|
|
|
|
config TEGRA210
|
|
bool "Tegra210 family"
|
|
select TEGRA_GPIO
|
|
select TEGRA_ARMV8_COMMON
|
|
select TEGRA_NO_BPMP
|
|
|
|
config TEGRA186
|
|
bool "Tegra186 family"
|
|
select DM_MAILBOX
|
|
select TEGRA186_BPMP
|
|
select TEGRA186_CLOCK
|
|
select TEGRA186_GPIO
|
|
select TEGRA186_RESET
|
|
select TEGRA_ARMV8_COMMON
|
|
select TEGRA_HSP
|
|
select TEGRA_IVC
|
|
|
|
endchoice
|
|
|
|
config TEGRA_DISCONNECT_UDC_ON_BOOT
|
|
bool "Disconnect USB device mode controller on boot"
|
|
default y
|
|
help
|
|
When loading U-Boot into RAM over USB protocols using tools such as
|
|
tegrarcm or L4T's exec-uboot.sh/tegraflash.py, Tegra's USB device
|
|
mode controller is initialized and enumerated by the host PC running
|
|
the tool. Unfortunately, these tools do not shut down the USB
|
|
controller before executing the downloaded code, and so the host PC
|
|
does not "de-enumerate" the USB device. This option shuts down the
|
|
USB controller when U-Boot boots to avoid leaving a stale USB device
|
|
present.
|
|
|
|
config SYS_MALLOC_F_LEN
|
|
default 0x1800
|
|
|
|
source "arch/arm/mach-tegra/tegra20/Kconfig"
|
|
source "arch/arm/mach-tegra/tegra30/Kconfig"
|
|
source "arch/arm/mach-tegra/tegra114/Kconfig"
|
|
source "arch/arm/mach-tegra/tegra124/Kconfig"
|
|
source "arch/arm/mach-tegra/tegra210/Kconfig"
|
|
source "arch/arm/mach-tegra/tegra186/Kconfig"
|
|
|
|
endif
|