config TEGRA_COMMON
bool "Tegra common options"
+ select BINMAN
+ select BOARD_EARLY_INIT_F
select CLK
select DM
select DM_ETH
select DM_SPI_FLASH
select MISC
select OF_CONTROL
+ select SPI
select VIDCONSOLE_AS_LCD if DM_VIDEO
- select BOARD_EARLY_INIT_F
+ imply CMD_DM
+ imply CRC32_VERIFY
config TEGRA_NO_BPMP
bool "Tegra common options for SoCs without BPMP"
config TEGRA_ARMV7_COMMON
bool "Tegra 32-bit common options"
- select CPU_V7
+ select CPU_V7A
select SPL
+ select SPL_BOARD_INIT if SPL
select SUPPORT_SPL
select TEGRA_COMMON
select TEGRA_GPIO
config TEGRA_ARMV8_COMMON
bool "Tegra 64-bit common options"
select ARM64
+ select LINUX_KERNEL_IMAGE_HEADER
select TEGRA_COMMON
+if TEGRA_ARMV8_COMMON
+config LNX_KRNL_IMG_TEXT_OFFSET_BASE
+ default 0x80000000
+endif
+
choice
prompt "Tegra SoC select"
optional
config TEGRA124
bool "Tegra124 family"
select TEGRA_ARMV7_COMMON
+ imply REGMAP
+ imply SYSCON
config TEGRA210
bool "Tegra210 family"
- select TEGRA_GPIO
select TEGRA_ARMV8_COMMON
+ select TEGRA_GPIO
select TEGRA_NO_BPMP
config TEGRA186
source "arch/arm/mach-tegra/tegra210/Kconfig"
source "arch/arm/mach-tegra/tegra186/Kconfig"
+config CMD_ENTERRCM
+ bool "Enable 'enterrcm' command"
+ default y
+ help
+ Tegra's boot ROM supports a mode whereby code may be downloaded and
+ flash-programmed over a USB connection. On dev boards, this is
+ typically entered by holding down a "force recovery" button and
+ resetting the CPU. However, not all boards have such a button (one
+ example is the Compulab Trimslice), so a method to enter RCM from
+ software is useful.
+
+ Even on boards other than Trimslice, controlling this over a UART
+ may be useful, e.g. to allow simple remote control without the need
+ for mechanical button actuators, or hooking up relays/... to the
+ button.
+
endif