xref: /rk3399_rockchip-uboot/arch/arm/mach-tegra/Kconfig (revision cc4288ef42be5bf70e7dc0fa5eb977cb4a6e894e)
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 TEGRA_IVC
13	bool "Tegra IVC protocol"
14	help
15	  IVC (Inter-VM Communication) protocol is a Tegra-specific IPC
16	  (Inter Processor Communication) framework. Within the context of
17	  U-Boot, it is typically used for communication between the main CPU
18	  and various auxiliary processors.
19
20config TEGRA_COMMON
21	bool "Tegra common options"
22	select DM
23	select DM_ETH
24	select DM_GPIO
25	select DM_I2C
26	select DM_KEYBOARD
27	select DM_PCI
28	select DM_PCI_COMPAT
29	select DM_PWM
30	select DM_SERIAL
31	select DM_SPI
32	select DM_SPI_FLASH
33	select OF_CONTROL
34	select VIDCONSOLE_AS_LCD if DM_VIDEO
35
36config TEGRA_ARMV7_COMMON
37	bool "Tegra 32-bit common options"
38	select CPU_V7
39	select SPL
40	select SUPPORT_SPL
41	select TEGRA_COMMON
42	select TEGRA_GPIO
43
44config TEGRA_ARMV8_COMMON
45	bool "Tegra 64-bit common options"
46	select ARM64
47	select TEGRA_COMMON
48
49choice
50	prompt "Tegra SoC select"
51	optional
52
53config TEGRA20
54	bool "Tegra20 family"
55	select TEGRA_ARMV7_COMMON
56
57config TEGRA30
58	bool "Tegra30 family"
59	select TEGRA_ARMV7_COMMON
60
61config TEGRA114
62	bool "Tegra114 family"
63	select TEGRA_ARMV7_COMMON
64
65config TEGRA124
66	bool "Tegra124 family"
67	select TEGRA_ARMV7_COMMON
68
69config TEGRA210
70	bool "Tegra210 family"
71	select TEGRA_GPIO
72	select TEGRA_ARMV8_COMMON
73
74config TEGRA186
75	bool "Tegra186 family"
76	select CLK
77	select DM_MAILBOX
78	select DM_RESET
79	select MISC
80	select TEGRA186_BPMP
81	select TEGRA186_CLOCK
82	select TEGRA186_GPIO
83	select TEGRA186_RESET
84	select TEGRA_ARMV8_COMMON
85	select TEGRA_HSP
86	select TEGRA_IVC
87
88endchoice
89
90config TEGRA_DISCONNECT_UDC_ON_BOOT
91	bool "Disconnect USB device mode controller on boot"
92	default y
93	help
94	  When loading U-Boot into RAM over USB protocols using tools such as
95	  tegrarcm or L4T's exec-uboot.sh/tegraflash.py, Tegra's USB device
96	  mode controller is initialized and enumerated by the host PC running
97	  the tool. Unfortunately, these tools do not shut down the USB
98	  controller before executing the downloaded code, and so the host PC
99	  does not "de-enumerate" the USB device. This option shuts down the
100	  USB controller when U-Boot boots to avoid leaving a stale USB device
101	  present.
102
103config SYS_MALLOC_F_LEN
104	default 0x1800
105
106source "arch/arm/mach-tegra/tegra20/Kconfig"
107source "arch/arm/mach-tegra/tegra30/Kconfig"
108source "arch/arm/mach-tegra/tegra114/Kconfig"
109source "arch/arm/mach-tegra/tegra124/Kconfig"
110source "arch/arm/mach-tegra/tegra210/Kconfig"
111source "arch/arm/mach-tegra/tegra186/Kconfig"
112
113endif
114