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 ARM_SAVE_DEBUG_CONTEXT
12 select ARCH_REQUIRE_GPIOLIB
13 select USB_ARCH_HAS_EHCI if USB_SUPPORT
14 select USB_ULPI if USB_SUPPORT
15 select USB_ULPI_VIEWPORT if USB_SUPPORT
16 select ARM_ERRATA_742230 if SMP
17 select USB_ARCH_HAS_EHCI if USB_SUPPORT
18 select USB_ULPI if USB_SUPPORT
19 select USB_ULPI_VIEWPORT if USB_SUPPORT
20 select ARCH_SUPPORTS_MSI if TEGRA_PCI
21 select PCI_MSI if TEGRA_PCI
24 Support for NVIDIA Tegra AP20 and T20 processors, based on the
25 ARM CortexA9MP CPU and the ARM PL310 L2 cache controller
27 config ARCH_TEGRA_3x_SOC
28 bool "Enable support for Tegra30 family"
29 select ARCH_TEGRA_HAS_PCIE
30 select ARCH_TEGRA_HAS_SATA
31 select ARCH_TEGRA_HAS_DUAL_3D
32 select ARCH_TEGRA_HAS_DUAL_CPU_CLUSTERS
35 select ARM_SAVE_DEBUG_CONTEXT
36 select GIC_SET_MULTIPLE_CPUS if SMP
37 select ARCH_REQUIRE_GPIOLIB
38 select USB_ARCH_HAS_EHCI if USB_SUPPORT
39 select USB_ULPI if USB_SUPPORT
40 select USB_ULPI_VIEWPORT if USB_SUPPORT
42 select REPORT_PRESENT_CPUS if TEGRA_AUTO_HOTPLUG
43 select ARCH_SUPPORTS_MSI if TEGRA_PCI
44 select PCI_MSI if TEGRA_PCI
45 select ARM_ERRATA_754322
46 select TEGRA_LP2_ARM_TWD if HAVE_ARM_TWD && !TEGRA_RAIL_OFF_MULTIPLE_CPUS
49 Support for NVIDIA Tegra T30 processor family, based on the
50 ARM CortexA9MP CPU and the ARM PL310 L2 cache controller
52 config ARCH_TEGRA_HAS_DUAL_3D
55 config ARCH_TEGRA_HAS_DUAL_CPU_CLUSTERS
58 config ARCH_TEGRA_HAS_PCIE
61 config ARCH_TEGRA_HAS_SATA
65 bool "PCIe host controller driver"
67 depends on ARCH_TEGRA_HAS_PCIE
69 Adds PCIe Host controller driver for tegra based systems
71 comment "Tegra board type"
75 depends on ARCH_TEGRA_2x_SOC
76 select MACH_HAS_SND_SOC_TEGRA_WM8903 if SND_SOC
78 Support for NVIDIA Harmony development platform
82 depends on ARCH_TEGRA_2x_SOC
83 select MACH_HAS_SND_SOC_TEGRA_WM8903 if SND_SOC
85 Support for NVIDIA Ventana development platform
89 depends on ARCH_TEGRA_2x_SOC
91 select MACH_HAS_SND_SOC_TEGRA_WM8903 if SND_SOC
93 Support for the Kaen version of Seaboard
97 depends on ARCH_TEGRA_2x_SOC
99 Support for the Toshiba AC100/Dynabook AZ netbook
102 bool "Seaboard board"
103 depends on ARCH_TEGRA_2x_SOC
104 select MACH_HAS_SND_SOC_TEGRA_WM8903 if SND_SOC
106 Support for nVidia Seaboard development platform. It will
107 also be included for some of the derivative boards that
108 have large similarities with the seaboard design.
111 bool "Generic Tegra20 board (FDT support)"
112 depends on ARCH_TEGRA_2x_SOC
115 Support for generic NVIDIA Tegra20 boards using Flattened Device Tree
117 config MACH_TRIMSLICE
118 bool "TrimSlice board"
119 depends on ARCH_TEGRA_2x_SOC
122 Support for CompuLab TrimSlice platform
126 depends on ARCH_TEGRA_2x_SOC
129 Support for the Wario version of Seaboard
133 depends on ARCH_TEGRA_2x_SOC
136 Support for the nVidia Ventana development platform
139 bool "Whistler board"
140 depends on ARCH_TEGRA_2x_SOC
141 select MACH_HAS_SND_SOC_TEGRA_WM8753 if SND_SOC
142 select MACH_HAS_SND_SOC_TEGRA_TLV320AIC326X if SND_SOC
144 Support for NVIDIA Whistler development platform
148 depends on ARCH_TEGRA_3x_SOC
149 select TEGRA_FPGA_PLATFORM
151 Support for NVIDIA Aruba2 FPGA development platform
155 depends on ARCH_TEGRA_3x_SOC
156 select MACH_HAS_SND_SOC_TEGRA_WM8903 if SND_SOC
157 select MACH_HAS_SND_SOC_TEGRA_TLV320AIC326X if SND_SOC
158 select MACH_HAS_SND_SOC_TEGRA_MAX98095 if SND_SOC
160 Support for NVIDIA Cardhu development platform
164 depends on ARCH_TEGRA_3x_SOC
166 Support for NVIDIA P1852 development platform
168 config MACH_TEGRA_ENTERPRISE
169 bool "Enterprise board"
170 depends on ARCH_TEGRA_3x_SOC
171 select MACH_HAS_SND_SOC_TEGRA_MAX98088 if SND_SOC
172 select TEGRA_SLOW_CSITE
174 Support for NVIDIA Enterprise development platform
178 depends on ARCH_TEGRA_3x_SOC
179 select MACH_HAS_SND_SOC_TEGRA_RT5639 if SND_SOC
180 select MACH_HAS_SND_SOC_TEGRA_RT5640 if SND_SOC
182 Support for NVIDIA KAI development platform
185 prompt "Tegra platform type"
186 default TEGRA_SILICON_PLATFORM
188 config TEGRA_SILICON_PLATFORM
191 This enables support for a Tegra silicon platform.
193 config TEGRA_SIMULATION_PLATFORM
196 This enables support for a Tegra simulation platform.
197 Select this only if you are an NVIDIA developer working
198 on a simulation platform.
200 config TEGRA_FPGA_PLATFORM
203 This enables support for a Tegra FPGA platform.
204 Select this only if you are an NVIDIA developer working
208 source "arch/arm/mach-tegra/p852/Kconfig"
211 prompt "Low-level debug console UART"
212 default TEGRA_DEBUG_UART_NONE
214 config TEGRA_DEBUG_UART_NONE
217 config TEGRA_DEBUG_UARTA
221 config TEGRA_DEBUG_UARTB
225 config TEGRA_DEBUG_UARTC
229 config TEGRA_DEBUG_UARTD
233 config TEGRA_DEBUG_UARTE
238 config TEGRA_SYSTEM_DMA
239 bool "Enable system DMA driver for NVIDIA Tegra SoCs"
242 Adds system DMA functionality for NVIDIA Tegra SoCs, used by
243 several Tegra device drivers
246 tristate "Enable PWM driver"
249 Enable support for the Tegra PWM controller(s).
251 config TEGRA_FIQ_DEBUGGER
252 bool "Enable the FIQ serial debugger on Tegra"
256 Enables the FIQ serial debugger on Tegra
258 config TEGRA_CARDHU_DSI
259 bool "Support DSI panel on Cardhu"
260 depends on MACH_CARDHU
263 Support for DSI Panel on Nvidia Cardhu
265 config TEGRA_EMC_SCALING_ENABLE
266 bool "Enable scaling the memory frequency"
267 depends on TEGRA_SILICON_PLATFORM
270 config TEGRA_CPU_DVFS
271 bool "Enable voltage scaling on Tegra CPU"
272 depends on TEGRA_SILICON_PLATFORM
275 config TEGRA_CORE_DVFS
276 bool "Enable voltage scaling on Tegra core"
277 depends on TEGRA_SILICON_PLATFORM
278 depends on TEGRA_CPU_DVFS
281 config TEGRA_IOVMM_GART
282 bool "Enable I/O virtual memory manager for GART"
283 depends on ARCH_TEGRA_2x_SOC
287 Enables support for remapping discontiguous physical memory
288 shared with the operating system into contiguous I/O virtual
289 space through the GART (Graphics Address Relocation Table)
290 hardware included on Tegra SoCs.
292 config TEGRA_IOVMM_SMMU
293 bool "Enable I/O virtual memory manager for SMMU"
294 depends on ARCH_TEGRA_3x_SOC
298 Enables support for remapping discontiguous physical memory
299 shared with the operating system into contiguous I/O virtual
300 space through the SMMU (System Memory Management Unit)
301 hardware included on Tegra SoCs.
303 config TEGRA_SMMU_BASE_AT_E0000000
304 bool "Force SMMU IOVA base to 0xe0000000"
305 depends on TEGRA_IOVMM_SMMU
308 Forces SMMU IOVA base address to 0xe0000000 for debug purposes
309 only. Select n for production systems.
311 config TEGRA_IOVMM_SMMU_SYSFS
312 bool "Enable SMMU register access for debugging"
313 depends on TEGRA_IOVMM_SMMU
316 Enables SMMU register access through /sys/devices/smmu/* files.
321 config TEGRA_AVP_KERNEL_ON_MMU
322 bool "Use AVP MMU to relocate AVP kernel"
323 depends on ARCH_TEGRA_2x_SOC
326 Use AVP MMU to relocate AVP kernel (nvrm_avp.bin).
328 config TEGRA_AVP_KERNEL_ON_SMMU
329 bool "Use SMMU to relocate AVP kernel"
330 depends on TEGRA_IOVMM_SMMU
333 Use SMMU to relocate AVP kernel (nvrm_avp.bin).
335 config TEGRA_ARB_SEMAPHORE
338 config TEGRA_THERMAL_THROTTLE
339 bool "Enable throttling of CPU speed on overtemp"
340 depends on TEGRA_SILICON_PLATFORM
344 Also requires enabling a temperature sensor such as NCT1008.
346 config WIFI_CONTROL_FUNC
347 bool "Enable WiFi control function abstraction"
349 Enables Power/Reset/Carddetect function abstraction
351 config TEGRA_CLOCK_DEBUG_WRITE
352 bool "Enable debugfs write access to clock tree"
356 config TEGRA_CLUSTER_CONTROL
358 depends on ARCH_TEGRA_HAS_DUAL_CPU_CLUSTERS
359 default y if PM_SLEEP
361 config TEGRA_AUTO_HOTPLUG
362 bool "Enable automatic CPU hot-plugging"
363 depends on HOTPLUG_CPU && CPU_FREQ && !ARCH_CPU_PROBE_RELEASE && !ARCH_TEGRA_2x_SOC
366 This option enables turning CPUs off/on and switching tegra
367 high/low power CPU clusters automatically, corresponding to
368 CPU frequency scaling.
370 config TEGRA_MC_PROFILE
371 tristate "Enable profiling memory controller utilization"
374 When enabled, provides a mechanism to perform statistical
375 sampling of the memory controller usage on a client-by-client
376 basis, and report the log through sysfs.
378 config TEGRA_EDP_LIMITS
379 bool "Enforce electrical design limits"
380 depends on TEGRA_SILICON_PLATFORM
382 default y if ARCH_TEGRA_3x_SOC
385 Limit maximum CPU frequency based on temperature and number
386 of on-line CPUs to keep CPU rail current within power supply
389 config TEGRA_EMC_TO_DDR_CLOCK
390 int "EMC to DDR clocks ratio"
391 default "2" if ARCH_TEGRA_2x_SOC
394 config TEGRA_CONVSERVATIVE_GOV_ON_EARLYSUPSEND
395 bool "Use conservative cpu frequency governor when device enters early suspend"
396 depends on HAS_EARLYSUSPEND && CPU_FREQ
399 Also will restore to original cpu frequency governor when device is resumed
401 config TEGRA_LEGACY_AUDIO
402 bool "Enable Tegra Legacy Audio APIs"
405 Say Y if you want to add support legacy (non-ALSA) audio APIs on
406 Tegra. This will disable ALSA (ASoC) support.
408 config TEGRA_STAT_MON
409 bool "Enable H/W statistics monitor"
410 depends on ARCH_TEGRA_2x_SOC
413 Enables support for hardware statistics monitor for AVP.
416 bool "Enabling the USB hotplug"
419 config TEGRA_DYNAMIC_PWRDET
420 bool "Enable dynamic activation of IO level auto-detection"
421 depends on TEGRA_SILICON_PLATFORM
424 This option allows turning off tegra IO level auto-detection
425 when IO power is stable. If set auto-detection cells are active
426 only during power transitions, otherwise, the cells are active
429 config TEGRA_EDP_EXACT_FREQ
430 bool "Use maximum possible cpu frequency when EDP capping"
431 depends on TEGRA_EDP_LIMITS
434 When enabled the cpu will run at the exact frequency
435 specified in the EDP table when EDP capping is applied; when
436 disabled the next lower cpufreq frequency will be used.
438 config TEGRA_USB_MODEM_POWER
439 bool "Enable tegra usb modem power management"
442 This option enables support for out-of_band remote wakeup, selective
443 suspend and system suspend/resume.
445 config TEGRA_BB_XMM_POWER
446 bool "Enable power driver for XMM modem"
449 Enables power driver which controls gpio signals to XMM modem.
451 config TEGRA_BB_XMM_POWER2
452 tristate "Enable power driver for XMM modem (flashless)"
455 Enables power driver which controls gpio signals to XMM modem
456 (in flashless configuration). User-mode application must
457 insert this LKM to initiate 2nd USB enumeration power sequence
458 - after modem software has been downloaded to flashless device.
460 config TEGRA_THERMAL_SYSFS
461 bool "Enable Thermal driver to use Thermal Sysfs infrastructure"
465 config TEGRA_PLLM_RESTRICTED
466 bool "Restrict PLLM usage as module clock source"
467 depends on !ARCH_TEGRA_2x_SOC
470 When enabled, PLLM usage may be restricted to modules with dividers
471 capable of dividing maximum PLLM frequency at minimum voltage. When
472 disabled, PLLM is used as a clock source with no restrictions (which
473 may effectively increase lower limit for core voltage).
475 config TEGRA_WDT_RECOVERY
476 bool "Enable suspend/resume watchdog recovery mechanism"
479 Enables watchdog recovery mechanism to protect against
480 suspend/resume hangs.
482 config TEGRA_LP2_ARM_TWD
485 config TEGRA_RAIL_OFF_MULTIPLE_CPUS
488 config TEGRA_SLOW_CSITE
489 bool "lower csite clock to 1 Mhz to reduce its power consumption"
492 When enabled, csite will be running at 1 Mhz and the performance of
493 jtag, lauterbach and other debugger will be extremely slow.
495 config TEGRA_PREINIT_CLOCKS
496 bool "Preinitialize Tegra clocks to known states"
499 Preinitialize Tegra clocks to known states before actual full-
500 scale clock initialization starts.