X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=arch%2Farm%2Fmach-tegra%2FKconfig;h=fb4b32e8b797c8463a7e8affa2ba1b513cb1fb7e;hb=6a474db4894d37f2edf4ed12e23b9e46f7a8aa3d;hp=9b4287193523cd400dc4cd3ff176ad9ca442625c;hpb=a26cd04920dc069fd6e91abb785426cf6c29f45f;p=u-boot diff --git a/arch/arm/mach-tegra/Kconfig b/arch/arm/mach-tegra/Kconfig index 9b42871935..fb4b32e8b7 100644 --- a/arch/arm/mach-tegra/Kconfig +++ b/arch/arm/mach-tegra/Kconfig @@ -1,35 +1,117 @@ 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 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_SERIAL + select DM_SPI + select DM_SPI_FLASH + select OF_CONTROL + select VIDCONSOLE_AS_LCD if DM_VIDEO + +config TEGRA_ARMV7_COMMON + bool "Tegra 32-bit common options" + select CPU_V7 + select SPL + select SUPPORT_SPL + select TEGRA_COMMON + select TEGRA_GPIO + +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 -endchoice +config TEGRA210 + bool "Tegra210 family" + select TEGRA_GPIO + select TEGRA_ARMV8_COMMON -config SYS_MALLOC_F_LEN - default 0x1800 +config TEGRA186 + bool "Tegra186 family" + select CLK + select DM_MAILBOX + select DM_RESET + select MISC + select TEGRA186_BPMP + select TEGRA186_CLOCK + select TEGRA186_GPIO + select TEGRA186_RESET + select TEGRA_ARMV8_COMMON + select TEGRA_HSP + select TEGRA_IVC -config USE_PRIVATE_LIBGCC - default y +endchoice -config SPL_DM +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