uboot/arch/arm/mach-tegra/Kconfig
<<
>>
Prefs
   1if TEGRA
   2
   3config SPL_GPIO_SUPPORT
   4        default y
   5
   6config SPL_LIBCOMMON_SUPPORT
   7        default y
   8
   9config SPL_LIBGENERIC_SUPPORT
  10        default y
  11
  12config SPL_SERIAL_SUPPORT
  13        default y
  14
  15config TEGRA_IVC
  16        bool "Tegra IVC protocol"
  17        help
  18          IVC (Inter-VM Communication) protocol is a Tegra-specific IPC
  19          (Inter Processor Communication) framework. Within the context of
  20          U-Boot, it is typically used for communication between the main CPU
  21          and various auxiliary processors.
  22
  23config TEGRA_COMMON
  24        bool "Tegra common options"
  25        select CLK
  26        select DM
  27        select DM_ETH
  28        select DM_GPIO
  29        select DM_I2C
  30        select DM_KEYBOARD
  31        select DM_MMC
  32        select DM_PWM
  33        select DM_RESET
  34        select DM_SERIAL
  35        select DM_SPI
  36        select DM_SPI_FLASH
  37        select MISC
  38        select OF_CONTROL
  39        select VIDCONSOLE_AS_LCD if DM_VIDEO
  40        select BOARD_EARLY_INIT_F
  41        imply CRC32_VERIFY
  42
  43config TEGRA_NO_BPMP
  44        bool "Tegra common options for SoCs without BPMP"
  45        select TEGRA_CAR
  46        select TEGRA_CAR_CLOCK
  47        select TEGRA_CAR_RESET
  48
  49config TEGRA_ARMV7_COMMON
  50        bool "Tegra 32-bit common options"
  51        select CPU_V7
  52        select SPL
  53        select SPL_BOARD_INIT if SPL
  54        select SUPPORT_SPL
  55        select TEGRA_COMMON
  56        select TEGRA_GPIO
  57        select TEGRA_NO_BPMP
  58
  59config TEGRA_ARMV8_COMMON
  60        bool "Tegra 64-bit common options"
  61        select ARM64
  62        select TEGRA_COMMON
  63
  64choice
  65        prompt "Tegra SoC select"
  66        optional
  67
  68config TEGRA20
  69        bool "Tegra20 family"
  70        select ARM_ERRATA_716044
  71        select ARM_ERRATA_742230
  72        select ARM_ERRATA_751472
  73        select TEGRA_ARMV7_COMMON
  74
  75config TEGRA30
  76        bool "Tegra30 family"
  77        select ARM_ERRATA_743622
  78        select ARM_ERRATA_751472
  79        select TEGRA_ARMV7_COMMON
  80
  81config TEGRA114
  82        bool "Tegra114 family"
  83        select TEGRA_ARMV7_COMMON
  84
  85config TEGRA124
  86        bool "Tegra124 family"
  87        select TEGRA_ARMV7_COMMON
  88        imply REGMAP
  89        imply SYSCON
  90
  91config TEGRA210
  92        bool "Tegra210 family"
  93        select TEGRA_GPIO
  94        select TEGRA_ARMV8_COMMON
  95        select TEGRA_NO_BPMP
  96
  97config TEGRA186
  98        bool "Tegra186 family"
  99        select DM_MAILBOX
 100        select TEGRA186_BPMP
 101        select TEGRA186_CLOCK
 102        select TEGRA186_GPIO
 103        select TEGRA186_RESET
 104        select TEGRA_ARMV8_COMMON
 105        select TEGRA_HSP
 106        select TEGRA_IVC
 107
 108endchoice
 109
 110config TEGRA_DISCONNECT_UDC_ON_BOOT
 111        bool "Disconnect USB device mode controller on boot"
 112        default y
 113        help
 114          When loading U-Boot into RAM over USB protocols using tools such as
 115          tegrarcm or L4T's exec-uboot.sh/tegraflash.py, Tegra's USB device
 116          mode controller is initialized and enumerated by the host PC running
 117          the tool. Unfortunately, these tools do not shut down the USB
 118          controller before executing the downloaded code, and so the host PC
 119          does not "de-enumerate" the USB device. This option shuts down the
 120          USB controller when U-Boot boots to avoid leaving a stale USB device
 121          present.
 122
 123config SYS_MALLOC_F_LEN
 124        default 0x1800
 125
 126source "arch/arm/mach-tegra/tegra20/Kconfig"
 127source "arch/arm/mach-tegra/tegra30/Kconfig"
 128source "arch/arm/mach-tegra/tegra114/Kconfig"
 129source "arch/arm/mach-tegra/tegra124/Kconfig"
 130source "arch/arm/mach-tegra/tegra210/Kconfig"
 131source "arch/arm/mach-tegra/tegra186/Kconfig"
 132
 133config CMD_ENTERRCM
 134        bool "Enable 'enterrcm' command"
 135        default y
 136        help
 137          Tegra's boot ROM supports a mode whereby code may be downloaded and
 138          flash-programmed over a USB connection. On dev boards, this is
 139          typically entered by holding down a "force recovery" button and
 140          resetting the CPU. However, not all boards have such a button (one
 141          example is the Compulab Trimslice), so a method to enter RCM from
 142          software is useful.
 143
 144          Even on boards other than Trimslice, controlling this over a UART
 145          may be useful, e.g. to allow simple remote control without the need
 146          for mechanical button actuators, or hooking up relays/... to the
 147          button.
 148
 149endif
 150