blob: 1eaf40627254d3f8e3992a56a77eaafd34b01ffe [file] [log] [blame]
Masahiro Yamada73a5b1a2014-08-31 07:10:56 +09001if TEGRA
2
Stephen Warrenadf3abd2016-07-18 12:17:11 -06003config TEGRA_IVC
4 bool "Tegra IVC protocol"
5 help
6 IVC (Inter-VM Communication) protocol is a Tegra-specific IPC
7 (Inter Processor Communication) framework. Within the context of
8 U-Boot, it is typically used for communication between the main CPU
9 and various auxiliary processors.
10
Stephen Warren8c29e652015-11-23 10:32:01 -070011config TEGRA_COMMON
12 bool "Tegra common options"
Tom Warren7b5002e2015-07-17 08:12:51 -070013 select DM
Simon Glassa403c9f2015-11-29 13:18:01 -070014 select DM_ETH
Tom Warren7b5002e2015-07-17 08:12:51 -070015 select DM_GPIO
Stephen Warren8c29e652015-11-23 10:32:01 -070016 select DM_I2C
Simon Glass01e99402015-10-18 21:17:16 -060017 select DM_KEYBOARD
Simon Glass46fcfc12015-11-19 20:27:02 -070018 select DM_PCI
Simon Glasseca7b0d2015-11-26 19:51:30 -070019 select DM_PCI_COMPAT
Simon Glassd8af3c92016-01-30 16:38:01 -070020 select DM_PWM
Stephen Warren8c29e652015-11-23 10:32:01 -070021 select DM_SERIAL
22 select DM_SPI
23 select DM_SPI_FLASH
24 select OF_CONTROL
Simon Glassfe4ee972016-02-16 18:09:19 -070025 select VIDCONSOLE_AS_LCD if DM_VIDEO
Stephen Warren8c29e652015-11-23 10:32:01 -070026
27config TEGRA_ARMV7_COMMON
28 bool "Tegra 32-bit common options"
29 select CPU_V7
30 select SPL
31 select SUPPORT_SPL
32 select TEGRA_COMMON
Stephen Warrenaf974be2016-05-12 12:07:41 -060033 select TEGRA_GPIO
Stephen Warren8c29e652015-11-23 10:32:01 -070034
35config TEGRA_ARMV8_COMMON
36 bool "Tegra 64-bit common options"
37 select ARM64
38 select TEGRA_COMMON
Tom Warren7b5002e2015-07-17 08:12:51 -070039
Masahiro Yamada73a5b1a2014-08-31 07:10:56 +090040choice
41 prompt "Tegra SoC select"
Joe Hershbergerf0699602015-05-12 14:46:23 -050042 optional
Masahiro Yamada73a5b1a2014-08-31 07:10:56 +090043
44config TEGRA20
45 bool "Tegra20 family"
Tom Warren7b5002e2015-07-17 08:12:51 -070046 select TEGRA_ARMV7_COMMON
Masahiro Yamada73a5b1a2014-08-31 07:10:56 +090047
48config TEGRA30
49 bool "Tegra30 family"
Tom Warren7b5002e2015-07-17 08:12:51 -070050 select TEGRA_ARMV7_COMMON
Masahiro Yamada73a5b1a2014-08-31 07:10:56 +090051
52config TEGRA114
53 bool "Tegra114 family"
Tom Warren7b5002e2015-07-17 08:12:51 -070054 select TEGRA_ARMV7_COMMON
Masahiro Yamada73a5b1a2014-08-31 07:10:56 +090055
56config TEGRA124
57 bool "Tegra124 family"
Tom Warren7b5002e2015-07-17 08:12:51 -070058 select TEGRA_ARMV7_COMMON
Masahiro Yamada73a5b1a2014-08-31 07:10:56 +090059
Tom Warrenab0cc6b2015-03-04 16:36:00 -070060config TEGRA210
61 bool "Tegra210 family"
Stephen Warrenaf974be2016-05-12 12:07:41 -060062 select TEGRA_GPIO
Stephen Warren8c29e652015-11-23 10:32:01 -070063 select TEGRA_ARMV8_COMMON
Tom Warrenab0cc6b2015-03-04 16:36:00 -070064
Stephen Warren03667eb2016-05-12 13:32:55 -060065config TEGRA186
66 bool "Tegra186 family"
Stephen Warrene8e3f202016-08-08 11:28:24 -060067 select CLK
Stephen Warrene0e2b262016-06-17 09:43:57 -060068 select DM_MAILBOX
Stephen Warrenfccc9c52016-08-08 11:28:25 -060069 select DM_RESET
Stephen Warrena2148922016-08-08 09:41:34 -060070 select MISC
71 select TEGRA186_BPMP
Stephen Warrene8e3f202016-08-08 11:28:24 -060072 select TEGRA186_CLOCK
Stephen Warren03667eb2016-05-12 13:32:55 -060073 select TEGRA186_GPIO
Stephen Warrenfccc9c52016-08-08 11:28:25 -060074 select TEGRA186_RESET
Stephen Warren03667eb2016-05-12 13:32:55 -060075 select TEGRA_ARMV8_COMMON
Stephen Warrene0e2b262016-06-17 09:43:57 -060076 select TEGRA_HSP
Stephen Warrenadf3abd2016-07-18 12:17:11 -060077 select TEGRA_IVC
Stephen Warren03667eb2016-05-12 13:32:55 -060078
Masahiro Yamada73a5b1a2014-08-31 07:10:56 +090079endchoice
80
Stephen Warren5a44ab42016-01-26 10:59:42 -070081config TEGRA_DISCONNECT_UDC_ON_BOOT
82 bool "Disconnect USB device mode controller on boot"
83 default y
84 help
85 When loading U-Boot into RAM over USB protocols using tools such as
86 tegrarcm or L4T's exec-uboot.sh/tegraflash.py, Tegra's USB device
87 mode controller is initialized and enumerated by the host PC running
88 the tool. Unfortunately, these tools do not shut down the USB
89 controller before executing the downloaded code, and so the host PC
90 does not "de-enumerate" the USB device. This option shuts down the
91 USB controller when U-Boot boots to avoid leaving a stale USB device
92 present.
93
Simon Glass838723b2015-02-11 16:32:59 -070094config SYS_MALLOC_F_LEN
95 default 0x1800
96
Masahiro Yamadaed1632a2015-02-20 17:04:04 +090097source "arch/arm/mach-tegra/tegra20/Kconfig"
98source "arch/arm/mach-tegra/tegra30/Kconfig"
99source "arch/arm/mach-tegra/tegra114/Kconfig"
100source "arch/arm/mach-tegra/tegra124/Kconfig"
Tom Warrenab0cc6b2015-03-04 16:36:00 -0700101source "arch/arm/mach-tegra/tegra210/Kconfig"
Stephen Warren03667eb2016-05-12 13:32:55 -0600102source "arch/arm/mach-tegra/tegra186/Kconfig"
Masahiro Yamada73a5b1a2014-08-31 07:10:56 +0900103
104endif