3 comment "NVIDIA Tegra options"
5 config ARCH_TEGRA_2x_SOC
6 bool "Enable support for Tegra20 family"
7 depends on !ARCH_TEGRA_3x_SOC
8 select ARCH_TEGRA_HAS_PCIE
11 select ARCH_REQUIRE_GPIOLIB
12 select USB_ARCH_HAS_EHCI if USB_SUPPORT
13 select USB_ULPI if USB_SUPPORT
14 select USB_ULPI_VIEWPORT if USB_SUPPORT
15 select ARM_ERRATA_742230 if SMP
16 select USB_ARCH_HAS_EHCI if USB_SUPPORT
17 select USB_ULPI if USB_SUPPORT
18 select USB_ULPI_VIEWPORT if USB_SUPPORT
19 select ARCH_SUPPORTS_MSI if TEGRA_PCI
20 select PCI_MSI if TEGRA_PCI
22 Support for NVIDIA Tegra AP20 and T20 processors, based on the
23 ARM CortexA9MP CPU and the ARM PL310 L2 cache controller
25 config ARCH_TEGRA_3x_SOC
26 bool "Enable support for Tegra30 family"
27 select ARCH_TEGRA_HAS_PCIE
28 select ARCH_TEGRA_HAS_SATA
29 select ARCH_TEGRA_HAS_DUAL_3D
30 select ARCH_TEGRA_HAS_DUAL_CPU_CLUSTERS
33 select ARCH_REQUIRE_GPIOLIB
34 select USB_ARCH_HAS_EHCI if USB_SUPPORT
35 select USB_ULPI if USB_SUPPORT
36 select USB_ULPI_VIEWPORT if USB_SUPPORT
38 select REPORT_PRESENT_CPUS if TEGRA_AUTO_HOTPLUG
39 select ARCH_SUPPORTS_MSI if TEGRA_PCI
40 select PCI_MSI if TEGRA_PCI
42 Support for NVIDIA Tegra T30 processor family, based on the
43 ARM CortexA9MP CPU and the ARM PL310 L2 cache controller
45 config ARCH_TEGRA_HAS_DUAL_3D
48 config ARCH_TEGRA_HAS_DUAL_CPU_CLUSTERS
51 config ARCH_TEGRA_HAS_PCIE
54 config ARCH_TEGRA_HAS_SATA
58 bool "PCIe host controller driver"
60 depends on ARCH_TEGRA_HAS_PCIE
62 Adds PCIe Host controller driver for tegra based systems
64 comment "Tegra board type"
68 depends on ARCH_TEGRA_2x_SOC
69 select MACH_HAS_SND_SOC_TEGRA_WM8903 if SND_SOC
71 Support for NVIDIA Harmony development platform
75 depends on ARCH_TEGRA_2x_SOC
77 Support for NVIDIA Ventana development platform
81 depends on ARCH_TEGRA_2x_SOC
83 select MACH_HAS_SND_SOC_TEGRA_WM8903 if SND_SOC
85 Support for the Kaen version of Seaboard
89 depends on ARCH_TEGRA_2x_SOC
91 Support for the Toshiba AC100/Dynabook AZ netbook
95 depends on ARCH_TEGRA_2x_SOC
96 select MACH_HAS_SND_SOC_TEGRA_WM8903 if SND_SOC
98 Support for nVidia Seaboard development platform. It will
99 also be included for some of the derivative boards that
100 have large similarities with the seaboard design.
103 bool "Generic Tegra20 board (FDT support)"
104 depends on ARCH_TEGRA_2x_SOC
107 Support for generic NVIDIA Tegra20 boards using Flattened Device Tree
109 config MACH_TRIMSLICE
110 bool "TrimSlice board"
111 depends on ARCH_TEGRA_2x_SOC
114 Support for CompuLab TrimSlice platform
118 depends on ARCH_TEGRA_2x_SOC
121 Support for the Wario version of Seaboard
125 depends on ARCH_TEGRA_2x_SOC
128 Support for the nVidia Ventana development platform
139 prompt "Tegra platform type"
140 default TEGRA_SILICON_PLATFORM
142 config TEGRA_SILICON_PLATFORM
145 This enables support for a Tegra silicon platform.
147 config TEGRA_SIMULATION_PLATFORM
150 This enables support for a Tegra simulation platform.
151 Select this only if you are an NVIDIA developer working
152 on a simulation platform.
154 config TEGRA_FPGA_PLATFORM
157 This enables support for a Tegra FPGA platform.
158 Select this only if you are an NVIDIA developer working
163 prompt "Low-level debug console UART"
164 default TEGRA_DEBUG_UART_NONE
166 config TEGRA_DEBUG_UART_NONE
169 config TEGRA_DEBUG_UARTA
173 config TEGRA_DEBUG_UARTB
177 config TEGRA_DEBUG_UARTC
181 config TEGRA_DEBUG_UARTD
185 config TEGRA_DEBUG_UARTE
190 config TEGRA_SYSTEM_DMA
191 bool "Enable system DMA driver for NVIDIA Tegra SoCs"
194 Adds system DMA functionality for NVIDIA Tegra SoCs, used by
195 several Tegra device drivers
198 tristate "Enable PWM driver"
201 Enable support for the Tegra PWM controller(s).
203 config TEGRA_EMC_SCALING_ENABLE
204 bool "Enable scaling the memory frequency"
205 depends on TEGRA_SILICON_PLATFORM
208 config TEGRA_CPU_DVFS
209 bool "Enable voltage scaling on Tegra CPU"
210 depends on TEGRA_SILICON_PLATFORM
213 config TEGRA_CORE_DVFS
214 bool "Enable voltage scaling on Tegra core"
215 depends on TEGRA_SILICON_PLATFORM
216 depends on TEGRA_CPU_DVFS
219 config TEGRA_IOVMM_GART
220 bool "Enable I/O virtual memory manager for GART"
221 depends on ARCH_TEGRA_2x_SOC
225 Enables support for remapping discontiguous physical memory
226 shared with the operating system into contiguous I/O virtual
227 space through the GART (Graphics Address Relocation Table)
228 hardware included on Tegra SoCs.
230 config TEGRA_IOVMM_SMMU
231 bool "Enable I/O virtual memory manager for SMMU"
232 depends on ARCH_TEGRA_3x_SOC
236 Enables support for remapping discontiguous physical memory
237 shared with the operating system into contiguous I/O virtual
238 space through the SMMU (System Memory Management Unit)
239 hardware included on Tegra SoCs.
241 config TEGRA_IOVMM_SMMU_SYSFS
242 bool "Enable SMMU register access for debugging"
243 depends on TEGRA_IOVMM_SMMU
246 Enables SMMU register access through /sys/devices/smmu/* files.
251 config TEGRA_AVP_KERNEL_ON_MMU
252 bool "Use AVP MMU to relocate AVP kernel"
253 depends on ARCH_TEGRA_2x_SOC
256 Use AVP MMU to relocate AVP kernel (nvrm_avp.bin).
258 config TEGRA_AVP_KERNEL_ON_SMMU
259 bool "Use SMMU to relocate AVP kernel"
260 depends on TEGRA_IOVMM_SMMU
263 Use SMMU to relocate AVP kernel (nvrm_avp.bin).
265 config TEGRA_ARB_SEMAPHORE
268 config TEGRA_THERMAL_THROTTLE
269 bool "Enable throttling of CPU speed on overtemp"
270 depends on TEGRA_SILICON_PLATFORM
274 Also requires enabling a temperature sensor such as NCT1008.
276 config WIFI_CONTROL_FUNC
277 bool "Enable WiFi control function abstraction"
279 Enables Power/Reset/Carddetect function abstraction
281 config TEGRA_CLOCK_DEBUG_WRITE
282 bool "Enable debugfs write access to clock tree"
286 config TEGRA_CLUSTER_CONTROL
288 depends on ARCH_TEGRA_HAS_DUAL_CPU_CLUSTERS
289 default y if PM_SLEEP
291 config TEGRA_AUTO_HOTPLUG
292 bool "Enable automatic CPU hot-plugging"
293 depends on HOTPLUG_CPU && CPU_FREQ && !ARCH_CPU_PROBE_RELEASE && !ARCH_TEGRA_2x_SOC
296 This option enables turning CPUs off/on and switching tegra
297 high/low power CPU clusters automatically, corresponding to
298 CPU frequency scaling.
300 config TEGRA_MC_PROFILE
301 tristate "Enable profiling memory controller utilization"
304 When enabled, provides a mechanism to perform statistical
305 sampling of the memory controller usage on a client-by-client
306 basis, and report the log through sysfs.
308 config TEGRA_EDP_LIMITS
309 bool "Enforce electrical design limits"
310 depends on TEGRA_SILICON_PLATFORM
312 default y if ARCH_TEGRA_3x_SOC
315 Limit maximum CPU frequency based on temperature and number
316 of on-line CPUs to keep CPU rail current within power supply
319 config TEGRA_INTERNAL_TSENSOR_EDP_SUPPORT
320 bool "Enable EDP and thermal throttling using internal TSensor"
321 depends on TEGRA_EDP_LIMITS && ARCH_TEGRA_3x_SOC
323 When enabled, uses internal tsensor to support EDP and
324 thermal throttling on tegra platform
326 config TEGRA_EMC_TO_DDR_CLOCK
327 int "EMC to DDR clocks ratio"
328 default "2" if ARCH_TEGRA_2x_SOC
331 config TEGRA_LEGACY_AUDIO
332 bool "Enable Tegra Legacy Audio APIs"
335 Say Y if you want to add support legacy (non-ALSA) audio APIs on
336 Tegra. This will disable ALSA (ASoC) support.
338 config TEGRA_STAT_MON
339 bool "Enable H/W statistics monitor"
340 depends on ARCH_TEGRA_2x_SOC
343 Enables support for hardware statistics monitor for AVP.
345 config TEGRA_DYNAMIC_PWRDET
346 bool "Enable dynamic activation of IO level auto-detection"
347 depends on TEGRA_SILICON_PLATFORM
350 This option allows turning off tegra IO level auto-detection
351 when IO power is stable. If set auto-detection cells are active
352 only during power transitions, otherwise, the cells are active
355 config TEGRA_EDP_EXACT_FREQ
356 bool "Use maximum possible cpu frequency when EDP capping"
357 depends on TEGRA_EDP_LIMITS
360 When enabled the cpu will run at the exact frequency
361 specified in the EDP table when EDP capping is applied; when
362 disabled the next lower cpufreq frequency will be used.
364 config TEGRA_USB_MODEM_POWER
365 bool "Enable tegra usb modem power management"
368 This option enables support for out-of_band remote wakeup, selective
369 suspend and system suspend/resume.
371 config TEGRA_THERMAL_SYSFS
372 bool "Enable Thermal driver to use Thermal Sysfs infrastructure"
376 config TEGRA_PLLM_RESTRICTED
377 bool "Restrict PLLM usage as module clock source"
378 depends on !ARCH_TEGRA_2x_SOC
381 When enabled, PLLM usage may be restricted to modules with dividers
382 capable of dividing maximum PLLM frequency at minimum voltage. When
383 disabled, PLLM is used as a clock source with no restrictions (which
384 may effectively increase lower limit for core voltage).