xref: /openbmc/linux/arch/arm/mach-tegra/Kconfig (revision d670b479)
1if ARCH_TEGRA
2
3comment "NVIDIA Tegra options"
4
5config ARCH_TEGRA_2x_SOC
6	bool "Enable support for Tegra20 family"
7	select CPU_V7
8	select ARM_GIC
9	select ARCH_REQUIRE_GPIOLIB
10	select PINCTRL
11	select PINCTRL_TEGRA20
12	select USB_ARCH_HAS_EHCI if USB_SUPPORT
13	select USB_ULPI if USB
14	select USB_ULPI_VIEWPORT if USB_SUPPORT
15	select ARM_ERRATA_720789
16	select ARM_ERRATA_742230
17	select ARM_ERRATA_751472
18	select ARM_ERRATA_754327
19	select ARM_ERRATA_764369
20	select PL310_ERRATA_727915 if CACHE_L2X0
21	select PL310_ERRATA_769419 if CACHE_L2X0
22	select CPU_FREQ_TABLE if CPU_FREQ
23	help
24	  Support for NVIDIA Tegra AP20 and T20 processors, based on the
25	  ARM CortexA9MP CPU and the ARM PL310 L2 cache controller
26
27config ARCH_TEGRA_3x_SOC
28	bool "Enable support for Tegra30 family"
29	select CPU_V7
30	select ARM_GIC
31	select ARCH_REQUIRE_GPIOLIB
32	select PINCTRL
33	select PINCTRL_TEGRA30
34	select USB_ARCH_HAS_EHCI if USB_SUPPORT
35	select USB_ULPI if USB
36	select USB_ULPI_VIEWPORT if USB_SUPPORT
37	select USE_OF
38	select ARM_ERRATA_743622
39	select ARM_ERRATA_751472
40	select ARM_ERRATA_754322
41	select ARM_ERRATA_764369
42	select PL310_ERRATA_769419 if CACHE_L2X0
43	select CPU_FREQ_TABLE if CPU_FREQ
44	help
45	  Support for NVIDIA Tegra T30 processor family, based on the
46	  ARM CortexA9MP CPU and the ARM PL310 L2 cache controller
47
48config TEGRA_PCI
49	bool "PCI Express support"
50	depends on ARCH_TEGRA_2x_SOC
51	select PCI
52
53config TEGRA_AHB
54	bool "Enable AHB driver for NVIDIA Tegra SoCs"
55	default y
56	help
57	  Adds AHB configuration functionality for NVIDIA Tegra SoCs,
58	  which controls AHB bus master arbitration and some
59	  perfomance parameters(priority, prefech size).
60
61comment "Tegra board type"
62
63config MACH_HARMONY
64       bool "Harmony board"
65       depends on ARCH_TEGRA_2x_SOC
66       select MACH_HAS_SND_SOC_TEGRA_WM8903 if SND_SOC
67       help
68         Support for nVidia Harmony development platform
69
70config MACH_KAEN
71       bool "Kaen board"
72       depends on ARCH_TEGRA_2x_SOC
73       select MACH_SEABOARD
74       select MACH_HAS_SND_SOC_TEGRA_WM8903 if SND_SOC
75       help
76         Support for the Kaen version of Seaboard
77
78config MACH_PAZ00
79       bool "Paz00 board"
80       depends on ARCH_TEGRA_2x_SOC
81       help
82         Support for the Toshiba AC100/Dynabook AZ netbook
83
84config MACH_SEABOARD
85       bool "Seaboard board"
86       depends on ARCH_TEGRA_2x_SOC
87       select MACH_HAS_SND_SOC_TEGRA_WM8903 if SND_SOC
88       help
89         Support for nVidia Seaboard development platform. It will
90	 also be included for some of the derivative boards that
91	 have large similarities with the seaboard design.
92
93config MACH_TEGRA_DT
94	bool "Generic Tegra20 board (FDT support)"
95	depends on ARCH_TEGRA_2x_SOC
96	select USE_OF
97	help
98	  Support for generic NVIDIA Tegra20 boards using Flattened Device Tree
99
100config MACH_TRIMSLICE
101       bool "TrimSlice board"
102       depends on ARCH_TEGRA_2x_SOC
103       select TEGRA_PCI
104       help
105         Support for CompuLab TrimSlice platform
106
107config MACH_WARIO
108       bool "Wario board"
109       depends on ARCH_TEGRA_2x_SOC
110       select MACH_SEABOARD
111       help
112         Support for the Wario version of Seaboard
113
114config MACH_VENTANA
115       bool "Ventana board"
116       depends on ARCH_TEGRA_2x_SOC
117       select MACH_TEGRA_DT
118       help
119         Support for the nVidia Ventana development platform
120
121choice
122        prompt "Default low-level debug console UART"
123        default TEGRA_DEBUG_UART_NONE
124
125config TEGRA_DEBUG_UART_NONE
126        bool "None"
127
128config TEGRA_DEBUG_UARTA
129        bool "UART-A"
130
131config TEGRA_DEBUG_UARTB
132        bool "UART-B"
133
134config TEGRA_DEBUG_UARTC
135        bool "UART-C"
136
137config TEGRA_DEBUG_UARTD
138        bool "UART-D"
139
140config TEGRA_DEBUG_UARTE
141        bool "UART-E"
142
143endchoice
144
145choice
146	prompt "Automatic low-level debug console UART"
147	default TEGRA_DEBUG_UART_AUTO_NONE
148
149config TEGRA_DEBUG_UART_AUTO_NONE
150	bool "None"
151
152config TEGRA_DEBUG_UART_AUTO_ODMDATA
153	bool "Via ODMDATA"
154	help
155	  Automatically determines which UART to use for low-level debug based
156	  on the ODMDATA value. This value is part of the BCT, and is written
157	  to the boot memory device using nvflash, or other flashing tool.
158	  When bits 19:18 are 3, then bits 17:15 indicate which UART to use;
159	  0/1/2/3/4 are UART A/B/C/D/E.
160
161config TEGRA_DEBUG_UART_AUTO_SCRATCH
162	bool "Via UART scratch register"
163	help
164	  Automatically determines which UART to use for low-level debug based
165	  on the UART scratch register value. Some bootloaders put ASCII 'D'
166	  in this register when they initialize their own console UART output.
167	  Using this option allows the kernel to automatically pick the same
168	  UART.
169
170endchoice
171
172config TEGRA_SYSTEM_DMA
173	bool "Enable system DMA driver for NVIDIA Tegra SoCs"
174	default y
175	help
176	  Adds system DMA functionality for NVIDIA Tegra SoCs, used by
177	  several Tegra device drivers
178
179config TEGRA_EMC_SCALING_ENABLE
180	bool "Enable scaling the memory frequency"
181
182endif
183