ARM: tegra11: dvfs: Update DFLL range configuration
[linux-2.6.git] / arch / arm / mach-tegra / Kconfig
1 # Copyright (c) 2012, NVIDIA CORPORATION.  All rights reserved.
2 #
3 # This program is free software; you can redistribute it and/or modify it
4 # under the terms and conditions of the GNU General Public License,
5 # version 2, as published by the Free Software Foundation.
6 #
7 # This program is distributed in the hope it will be useful, but WITHOUT
8 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
9 # FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
10 # more details.
11 #
12 # You should have received a copy of the GNU General Public License
13 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
14
15 if ARCH_TEGRA
16
17 comment "NVIDIA Tegra options"
18
19 config ARCH_TEGRA_2x_SOC
20         bool "Enable support for Tegra20 family"
21         depends on !ARCH_TEGRA_3x_SOC
22         depends on !ARCH_TEGRA_11x_SOC
23         select ARM_CPU_SUSPEND if PM
24         select ARCH_TEGRA_HAS_ARM_SCU
25         select ARCH_TEGRA_HAS_PCIE
26         select CPU_V7
27         select ARM_GIC
28         select ARM_SAVE_DEBUG_CONTEXT if PM_SLEEP
29         select ARCH_REQUIRE_GPIOLIB
30         select PINCTRL
31         select PINCTRL_TEGRA20
32         select USB_ARCH_HAS_EHCI if USB_SUPPORT
33         select USB_ULPI if USB
34         select USB_ULPI_VIEWPORT if USB_SUPPORT
35         select ARM_ERRATA_720789
36         select ARM_ERRATA_751472
37         select ARM_ERRATA_754327
38         select ARM_ERRATA_764369
39         select ARM_ERRATA_742230 if SMP
40         select PL310_ERRATA_769419 if CACHE_L2X0
41         select CPU_FREQ_TABLE if CPU_FREQ
42         select USB_ARCH_HAS_EHCI if USB_SUPPORT
43         select USB_ULPI if USB_SUPPORT
44         select USB_ULPI_VIEWPORT if USB_SUPPORT
45         select ARCH_SUPPORTS_MSI if TEGRA_PCI
46         select PCI_MSI if TEGRA_PCI
47         select CPA
48         select ARM_ERRATA_716044
49         select NVMAP_CACHE_MAINT_BY_SET_WAYS
50         select NVMAP_OUTER_CACHE_MAINT_BY_SET_WAYS
51         select SOC_BUS
52         help
53           Support for NVIDIA Tegra AP20 and T20 processors, based on the
54           ARM CortexA9MP CPU and the ARM PL310 L2 cache controller
55
56 config ARCH_TEGRA_3x_SOC
57         bool "Enable support for Tegra30 family"
58         depends on !ARCH_TEGRA_11x_SOC
59         select ARM_CPU_SUSPEND if PM
60         depends on !ARCH_TEGRA_11x_SOC
61         select ARCH_TEGRA_HAS_ARM_SCU
62         select ARCH_TEGRA_HAS_PCIE
63         select ARCH_TEGRA_HAS_SATA
64         select ARCH_TEGRA_HAS_DUAL_3D
65         select ARCH_TEGRA_HAS_DUAL_CPU_CLUSTERS
66         select CPU_V7
67         select ARM_GIC
68         select ARM_SAVE_DEBUG_CONTEXT if PM_SLEEP
69         select GIC_SET_MULTIPLE_CPUS if SMP
70         select ARCH_REQUIRE_GPIOLIB
71         select PINCTRL
72         select PINCTRL_TEGRA30
73         select USB_ARCH_HAS_EHCI if USB_SUPPORT
74         select USB_ULPI if USB
75         select USB_ULPI_VIEWPORT if USB_SUPPORT
76         select USE_OF
77         select REPORT_PRESENT_CPUS if TEGRA_AUTO_HOTPLUG
78         select ARCH_SUPPORTS_MSI if TEGRA_PCI
79         select PCI_MSI if TEGRA_PCI
80         select ARM_ERRATA_743622
81         select ARM_ERRATA_751472
82         select ARM_ERRATA_754322
83         select ARM_ERRATA_764369
84         select PL310_ERRATA_769419 if CACHE_L2X0
85         select CPU_FREQ_TABLE if CPU_FREQ
86         select TEGRA_LP2_CPU_TIMER if HAVE_ARM_TWD && !TEGRA_RAIL_OFF_MULTIPLE_CPUS
87         select CPA
88         select NVMAP_CACHE_MAINT_BY_SET_WAYS
89         select NVMAP_OUTER_CACHE_MAINT_BY_SET_WAYS
90         select PL310_ERRATA_727915
91         select TEGRA_LATENCY_ALLOWANCE if !TEGRA_FPGA_PLATFORM
92         select TEGRA_LATENCY_ALLOWANCE_SCALING if !TEGRA_FPGA_PLATFORM
93         select SOC_BUS
94         help
95           Support for NVIDIA Tegra T30 processor family, based on the
96           ARM CortexA9MP CPU and the ARM PL310 L2 cache controller
97
98 config ARCH_TEGRA_11x_SOC
99         bool "Tegra 11x family SOC"
100         select ARCH_TEGRA_HAS_DUAL_CPU_CLUSTERS
101         select CPU_V7
102         select ARM_L1_CACHE_SHIFT_6
103         select ARM_ARCH_TIMER
104         select ARCH_TEGRA_HAS_SYMMETRIC_CPU_PWR_GATE
105         select ARM_CPU_SUSPEND if PM
106         select ARM_GIC
107         select ARCH_REQUIRE_GPIOLIB
108         select USB_ARCH_HAS_EHCI if USB_SUPPORT
109         select USB_EHCI_TEGRA if USB_SUPPORT
110         select USB_ULPI if USB_SUPPORT
111         select USB_ULPI_VIEWPORT if USB_SUPPORT
112         select USE_OF
113         select REPORT_PRESENT_CPUS if TEGRA_AUTO_HOTPLUG
114         select TEGRA_LP2_CPU_TIMER if !TEGRA_RAIL_OFF_MULTIPLE_CPUS
115         select CPA
116         select ARCH_TEGRA_HAS_CL_DVFS
117         select TEGRA_DYNAMIC_CBUS
118         select TEGRA_DUAL_CBUS
119         select ARCH_TEGRA_4GB_MEMORY
120         select EDP_FRAMEWORK
121         select TEGRA_LATENCY_ALLOWANCE if !TEGRA_FPGA_PLATFORM
122         select TEGRA_MC_PTSA if !TEGRA_FPGA_PLATFORM
123         select SOC_BUS
124         select TEGRA_ISOMGR
125         select TEGRA_ISOMGR_SYSFS
126         select TEGRA_ISOMGR_DEBUG
127         help
128           Support for NVIDIA Tegra 11x family of SoCs, based upon the
129           ARM Cortex-A15MP CPU
130
131 config ARCH_TEGRA_HAS_ARM_SCU
132         bool
133
134 config ARCH_TEGRA_HAS_DUAL_3D
135         bool
136
137 config ARCH_TEGRA_HAS_DUAL_CPU_CLUSTERS
138         bool
139
140 config ARCH_TEGRA_HAS_SYMMETRIC_CPU_PWR_GATE
141         bool
142
143 config ARCH_TEGRA_HAS_PCIE
144         bool
145
146 config ARCH_TEGRA_HAS_SATA
147         bool
148
149 config ARCH_TEGRA_HAS_CL_DVFS
150         bool
151
152 config TEGRA_PCI
153         bool "PCIe host controller driver"
154         select PCI
155         depends on ARCH_TEGRA_HAS_PCIE
156         help
157           Adds PCIe Host controller driver for tegra based systems
158
159 config TEGRA_IRDA
160         bool "IRDA on UARTB Port of Verbier"
161         select IRDA_CPLD
162         depends on ARCH_TEGRA_3x_SOC && MACH_CARDHU
163         help
164           Adds support for Vishay IrDA transceiver at UARTB port
165           of Verbier Boards(E1186 and E1198) with no ULPI rework done.
166
167 comment "Tegra board type"
168
169 config MACH_HARMONY
170        bool "Harmony board"
171        depends on ARCH_TEGRA_2x_SOC
172        select MACH_HAS_SND_SOC_TEGRA_WM8903 if SND_SOC
173        help
174          Support for NVIDIA Harmony development platform
175
176 config MACH_VENTANA
177        bool "Ventana board"
178        depends on ARCH_TEGRA_2x_SOC
179        select MACH_HAS_SND_SOC_TEGRA_WM8903 if SND_SOC
180        help
181          Support for NVIDIA Ventana development platform
182
183 config MACH_KAEN
184        bool "Kaen board"
185        depends on ARCH_TEGRA_2x_SOC
186        select MACH_SEABOARD
187        select MACH_HAS_SND_SOC_TEGRA_WM8903 if SND_SOC
188        help
189          Support for the Kaen version of Seaboard
190
191 config MACH_PAZ00
192        bool "Paz00 board"
193        depends on ARCH_TEGRA_2x_SOC
194        help
195          Support for the Toshiba AC100/Dynabook AZ netbook
196
197 config MACH_SEABOARD
198        bool "Seaboard board"
199        depends on ARCH_TEGRA_2x_SOC
200        select MACH_HAS_SND_SOC_TEGRA_WM8903 if SND_SOC
201        help
202          Support for nVidia Seaboard development platform. It will
203          also be included for some of the derivative boards that
204          have large similarities with the seaboard design.
205
206 config MACH_TEGRA_DT
207         bool "Generic Tegra20 board (FDT support)"
208         depends on ARCH_TEGRA_2x_SOC
209         select USE_OF
210         help
211           Support for generic NVIDIA Tegra20 boards using Flattened Device Tree
212
213 config MACH_TRIMSLICE
214        bool "TrimSlice board"
215        depends on ARCH_TEGRA_2x_SOC
216        select TEGRA_PCI
217        help
218          Support for CompuLab TrimSlice platform
219
220 config MACH_WARIO
221        bool "Wario board"
222        depends on ARCH_TEGRA_2x_SOC
223        select MACH_SEABOARD
224        help
225          Support for the Wario version of Seaboard
226
227 config MACH_VENTANA
228        bool "Ventana board"
229        depends on ARCH_TEGRA_2x_SOC
230        select MACH_TEGRA_DT
231        help
232          Support for the nVidia Ventana development platform
233
234 config MACH_WHISTLER
235        bool "Whistler board"
236        depends on ARCH_TEGRA_2x_SOC
237        select MACH_HAS_SND_SOC_TEGRA_WM8753 if SND_SOC
238        select MACH_HAS_SND_SOC_TEGRA_TLV320AIC326X if SND_SOC
239        help
240          Support for NVIDIA Whistler development platform
241
242 config MACH_ARUBA
243        bool "Aruba board"
244        depends on ARCH_TEGRA_3x_SOC
245        select TEGRA_FPGA_PLATFORM
246        help
247          Support for NVIDIA Aruba2 FPGA development platform
248
249 config MACH_CURACAO
250        bool "Curacao board"
251        depends on ARCH_TEGRA_11x_SOC
252        select MACH_HAS_SND_SOC_TEGRA_WM8903 if SND_SOC
253        select TEGRA_FPGA_PLATFORM
254        help
255          Support for NVIDIA Curacao FPGA development platform
256
257 config MACH_CARDHU
258        bool "Cardhu board"
259        depends on ARCH_TEGRA_3x_SOC
260        select MACH_HAS_SND_SOC_TEGRA_WM8903 if SND_SOC
261        select MACH_HAS_SND_SOC_TEGRA_TLV320AIC326X if SND_SOC
262        select MACH_HAS_SND_SOC_TEGRA_MAX98095 if SND_SOC
263        help
264          Support for NVIDIA Cardhu development platform
265
266 config MACH_P1852
267        bool "P1852 board"
268        depends on ARCH_TEGRA_3x_SOC
269        help
270          Support for NVIDIA P1852 development platform
271
272 config MACH_E1853
273        bool "E1853 board"
274        depends on ARCH_TEGRA_3x_SOC
275        help
276          Support for NVIDIA E1853 development platform
277
278 config MACH_TEGRA_ENTERPRISE
279        bool "Enterprise board"
280        depends on ARCH_TEGRA_3x_SOC
281        select MACH_HAS_SND_SOC_TEGRA_MAX98088 if SND_SOC
282        select MACH_HAS_SND_SOC_TEGRA_TLV320AIC326X if SND_SOC
283        select TEGRA_SLOW_CSITE
284        help
285          Support for NVIDIA Enterprise development platform
286
287 config MACH_TAI
288        bool "Tai board"
289        depends on MACH_TEGRA_ENTERPRISE
290        help
291          Support for NVIDIA Tai development platform
292
293 config MACH_KAI
294        bool "Kai board"
295        depends on ARCH_TEGRA_3x_SOC
296        select MACH_HAS_SND_SOC_TEGRA_RT5639 if SND_SOC
297        select MACH_HAS_SND_SOC_TEGRA_RT5640 if SND_SOC
298        help
299          Support for NVIDIA KAI development platform
300
301 config MACH_DALMORE
302        bool "Dalmore board"
303        depends on ARCH_TEGRA_11x_SOC
304        select MACH_HAS_SND_SOC_TEGRA_RT5639 if SND_SOC
305        select MACH_HAS_SND_SOC_TEGRA_RT5640 if SND_SOC
306        help
307          Support for NVIDIA DALMORE development platform
308
309 config MACH_TEGRA_PLUTO
310        bool "Pluto board"
311        depends on ARCH_TEGRA_11x_SOC
312        select MACH_HAS_SND_SOC_TEGRA_CS42L73 if SND_SOC
313        help
314          Support for NVIDIA PLUTO development platform
315
316 choice
317        prompt "Tegra platform type"
318        default TEGRA_SILICON_PLATFORM
319
320 config TEGRA_SILICON_PLATFORM
321         bool "Silicon"
322         help
323           This enables support for a Tegra silicon platform.
324
325 config TEGRA_SIMULATION_PLATFORM
326         bool "Simulation"
327         help
328           This enables support for a Tegra simulation platform.
329           Select this only if you are an NVIDIA developer working
330           on a simulation platform.
331
332 config TEGRA_FPGA_PLATFORM
333         bool "FPGA"
334         help
335           This enables support for a Tegra FPGA platform.
336           Select this only if you are an NVIDIA developer working
337           on a FPGA platform.
338 endchoice
339
340 source "arch/arm/mach-tegra/p852/Kconfig"
341
342 choice
343         prompt "Low-level debug console UART"
344         default TEGRA_DEBUG_UART_NONE
345
346 config TEGRA_DEBUG_UART_NONE
347         bool "None"
348
349 config TEGRA_DEBUG_UARTA
350         bool "UART-A"
351         depends on DEBUG_LL
352
353 config TEGRA_DEBUG_UARTB
354         bool "UART-B"
355         depends on DEBUG_LL
356
357 config TEGRA_DEBUG_UARTC
358         bool "UART-C"
359         depends on DEBUG_LL
360
361 config TEGRA_DEBUG_UARTD
362         bool "UART-D"
363         depends on DEBUG_LL
364
365 config TEGRA_DEBUG_UARTE
366         bool "UART-E"
367         depends on DEBUG_LL
368 endchoice
369
370 config TEGRA_SYSTEM_DMA
371         bool "Enable system DMA driver for NVIDIA Tegra SoCs"
372         default y
373         help
374           Adds system DMA functionality for NVIDIA Tegra SoCs, used by
375           several Tegra device drivers
376
377 config TEGRA_PWM
378         tristate "Enable PWM driver"
379         select HAVE_PWM
380         help
381           Enable support for the Tegra PWM controller(s).
382
383 config TEGRA_FIQ_DEBUGGER
384         bool "Enable the FIQ serial debugger on Tegra"
385         default n
386         select FIQ_DEBUGGER
387         help
388           Enables the FIQ serial debugger on Tegra
389
390 config TEGRA_P1852_TDM
391         bool "Enable TDM mode for P1852 SKUs"
392         default n
393         depends on MACH_P1852
394         help
395                 Enables TDM mode driver for P1852 SKUs. If this
396                 is not defined then I2S mode is selected by default.
397
398 config TEGRA_TDM
399         bool "Enable TDM mode for Automotive SKUs"
400         depends on MACH_E1853
401         help
402                 Enables TDM mode driver for Automotive SKUs. If this
403                 is not defined then I2S mode is selected by default.
404
405 config TEGRA_CARDHU_DSI
406         bool "Support DSI panel on Cardhu"
407         depends on MACH_CARDHU
408         select TEGRA_DSI
409         help
410                 Support for DSI Panel on Nvidia Cardhu
411
412 config TEGRA_CARDHU_DUAL_DSI_PANEL
413         bool "Support Dual DSI panel on Cardhu"
414         default n
415         depends on TEGRA_CARDHU_DSI
416         help
417                 Support for Dual DSI Panel on Nvidia Cardhu
418
419 config TEGRA_EMC_SCALING_ENABLE
420         bool "Enable scaling the memory frequency"
421         depends on TEGRA_SILICON_PLATFORM
422         default n
423
424 config TEGRA_CPU_DVFS
425         bool "Enable voltage scaling on Tegra CPU"
426         depends on TEGRA_SILICON_PLATFORM
427         default y
428
429 config TEGRA_CORE_DVFS
430         bool "Enable voltage scaling on Tegra core"
431         depends on TEGRA_SILICON_PLATFORM
432         depends on TEGRA_CPU_DVFS
433         default y
434
435 config TEGRA_IOVMM_GART
436         bool "Enable I/O virtual memory manager for GART"
437         depends on ARCH_TEGRA_2x_SOC && !TEGRA_IOMMU_GART
438         default y
439         select TEGRA_IOVMM
440         help
441           Enables support for remapping discontiguous physical memory
442           shared with the operating system into contiguous I/O virtual
443           space through the GART (Graphics Address Relocation Table)
444           hardware included on Tegra SoCs.
445
446 config TEGRA_IOVMM_SMMU
447         bool "Enable I/O virtual memory manager for SMMU"
448         depends on !ARCH_TEGRA_2x_SOC && !TEGRA_IOMMU_SMMU
449         default y
450         select TEGRA_IOVMM
451         help
452           Enables support for remapping discontiguous physical memory
453           shared with the operating system into contiguous I/O virtual
454           space through the SMMU (System Memory Management Unit)
455           hardware included on Tegra SoCs.
456
457 config TEGRA_IOVMM_SMMU_SYSFS
458         bool "Enable SMMU register access for debugging"
459         depends on TEGRA_IOVMM_SMMU
460         default n
461         help
462           Enables SMMU register access through /sys/devices/smmu/* files.
463
464 config TEGRA_IOVMM
465         depends on TEGRA_IOVMM_GART || TEGRA_IOVMM_SMMU
466         bool
467
468 config TEGRA_AVP_KERNEL_ON_MMU
469         bool "Use AVP MMU to relocate AVP kernel"
470         depends on ARCH_TEGRA_2x_SOC
471         default y
472         help
473           Use AVP MMU to relocate AVP kernel (nvrm_avp.bin).
474
475 config TEGRA_AVP_KERNEL_ON_SMMU
476         bool "Use SMMU to relocate AVP kernel"
477         depends on TEGRA_IOVMM_SMMU || TEGRA_IOMMU_SMMU
478         default y
479         help
480           Use SMMU to relocate AVP kernel (nvrm_avp.bin).
481
482 config TEGRA_ARB_SEMAPHORE
483         bool
484
485 config TEGRA_THERMAL_THROTTLE
486         bool "Enable throttling of CPU speed on overtemp"
487         depends on TEGRA_SILICON_PLATFORM
488         depends on CPU_FREQ
489         depends on THERMAL
490         default y
491         help
492           Also requires enabling a temperature sensor such as NCT1008.
493
494 config TEGRA_CLOCK_DEBUG_WRITE
495         bool "Enable debugfs write access to clock tree"
496         depends on DEBUG_FS
497         default n
498
499 config TEGRA_CLUSTER_CONTROL
500         bool
501         depends on ARCH_TEGRA_HAS_DUAL_CPU_CLUSTERS
502         default y if PM_SLEEP
503
504 config TEGRA_CPUQUIET
505         bool
506
507 config TEGRA_AUTO_HOTPLUG
508         bool "Enable automatic CPU hot-plugging"
509         depends on HOTPLUG_CPU && CPU_FREQ && !ARCH_CPU_PROBE_RELEASE && !ARCH_TEGRA_2x_SOC
510         select TEGRA_CPUQUIET
511         default y
512         help
513           This option enables turning CPUs off/on and switching tegra
514           high/low power CPU clusters automatically, corresponding to
515           CPU frequency scaling.
516
517 config TEGRA_MC_EARLY_ACK
518         bool "Enable early acknowledgement from mermory controller"
519         depends on ARCH_TEGRA_3x_SOC
520         default y
521         help
522           This option enables early acknowledgement from memory
523           controller. This feature is used to improve CPU memory
524           write performance.
525
526 config TEGRA_MC_PROFILE
527         tristate "Enable profiling memory controller utilization"
528         default y
529         help
530           When enabled, provides a mechanism to perform statistical
531           sampling of the memory controller usage on a client-by-client
532           basis, and report the log through sysfs.
533
534 config TEGRA_EDP_LIMITS
535         bool "Enforce electrical design limits"
536         depends on TEGRA_SILICON_PLATFORM
537         depends on CPU_FREQ
538         depends on THERMAL
539         default y if ARCH_TEGRA_3x_SOC
540         default n
541         help
542           Limit maximum CPU frequency based on temperature and number
543           of on-line CPUs to keep CPU rail current within power supply
544           capabilities.
545
546 config TEGRA_EMC_TO_DDR_CLOCK
547         int "EMC to DDR clocks ratio"
548         default "2" if ARCH_TEGRA_2x_SOC
549         default "1"
550
551 config TEGRA_SE_ON_CBUS
552         bool "To Drive SE clock from cbus"
553         default y
554         help
555           This option enables SE clock to be derived from cbus
556
557 config TEGRA_CBUS_CLOCK_DIVIDER
558         int "CBUS clock divider"
559         default "2"
560
561 config TEGRA_STAT_MON
562         bool "Enable H/W statistics monitor"
563         depends on ARCH_TEGRA_2x_SOC
564         default n
565         help
566           Enables support for hardware statistics monitor for AVP.
567
568 config USB_HOTPLUG
569         bool "Enabling the USB hotplug"
570         default n
571
572 config TEGRA_GADGET_BOOST_CPU_FREQ
573         int "Boost cpu frequency for tegra usb gadget (0-1300 mhz)"
574         range 0 1300
575         default 0
576         help
577           Devices need to boost frequency of CPU when they are connected
578           to host pc through usb cable for better performance. This value
579           is the amount of the frequency (in mhz) to be boosted. If it is
580           zero boosting frequency will not be enabled. This value will be
581           used only by usb gadget driver.
582
583 config TEGRA_DYNAMIC_PWRDET
584         bool "Enable dynamic activation of IO level auto-detection"
585         depends on TEGRA_SILICON_PLATFORM
586         default n
587         help
588           This option allows turning off tegra IO level auto-detection
589           when IO power is stable. If set auto-detection cells are active
590           only during power transitions, otherwise, the cells are active
591           always
592
593 config TEGRA_EDP_EXACT_FREQ
594         bool "Use maximum possible cpu frequency when EDP capping"
595         depends on TEGRA_EDP_LIMITS
596         default y
597         help
598           When enabled the cpu will run at the exact frequency
599           specified in the EDP table when EDP capping is applied; when
600           disabled the next lower cpufreq frequency will be used.
601
602 config TEGRA_USB_MODEM_POWER
603         bool "Enable tegra usb modem power management"
604         default n
605         help
606           This option enables support for out-of_band remote wakeup, selective
607           suspend and system suspend/resume.
608
609 config TEGRA_BB_XMM_POWER
610         bool "Enable power driver for XMM modem"
611         default n
612         help
613           Enables power driver which controls gpio signals to XMM modem.
614
615 config TEGRA_BB_XMM_POWER2
616         tristate "Enable power driver for XMM modem (flashless)"
617         default n
618         help
619           Enables power driver which controls gpio signals to XMM modem
620           (in flashless configuration).  User-mode application must
621           insert this LKM to initiate 2nd USB enumeration power sequence
622           - after modem software has been downloaded to flashless device.
623
624 config TEGRA_PLLM_RESTRICTED
625         bool "Restrict PLLM usage as module clock source"
626         depends on !ARCH_TEGRA_2x_SOC
627         default n
628         help
629           When enabled, PLLM usage may be restricted to modules with dividers
630           capable of dividing maximum PLLM frequency at minimum voltage. When
631           disabled, PLLM is used as a clock source with no restrictions (which
632           may effectively increase lower limit for core voltage).
633
634 config TEGRA_WDT_RECOVERY
635         bool "Enable suspend/resume watchdog recovery mechanism"
636         default n
637         help
638           Enables watchdog recovery mechanism to protect against
639           suspend/resume hangs.
640
641 config TEGRA_LP2_CPU_TIMER
642         bool
643
644 config TEGRA_RAIL_OFF_MULTIPLE_CPUS
645         bool
646
647 config TEGRA_SLOW_CSITE
648         bool "lower csite clock to 1 Mhz to reduce its power consumption"
649         default n
650         help
651           When enabled, csite will be running at 1 Mhz and the performance of
652           jtag, lauterbach and other debugger will be extremely slow.
653
654 config TEGRA_PREINIT_CLOCKS
655         bool "Preinitialize Tegra clocks to known states"
656         default n
657         help
658           Preinitialize Tegra clocks to known states before actual full-
659           scale clock initialization starts.
660
661 config TEGRA_PREPOWER_WIFI
662         bool "Pre-power up WiFi "
663         default n
664         help
665           Pre-power up the on board WiFi chip
666
667 config TEGRA_DYNAMIC_CBUS
668         bool "Adjust dynamically graphics clocks cumulative dvfs table"
669
670 config TEGRA_DUAL_CBUS
671         bool "Use two plls (PLLC2/PLLC3) as graphics clocks sources"
672
673 config TEGRA_MIGRATE_CBUS_USERS
674         bool "Move cbus users between source plls to optimize cumulative dvfs"
675         depends on TEGRA_DYNAMIC_CBUS && TEGRA_DUAL_CBUS
676
677 config TEGRA_SKIN_THROTTLE
678         bool "Skin Temperature throttling"
679         depends on TEGRA_THERMAL_THROTTLE
680         depends on THERM_EST
681         default n
682         help
683           Enable throttling to control the temperature of the skin/case
684           of the device.
685
686 config ARCH_TEGRA_4GB_MEMORY
687         bool "Full 4GB physical memory support"
688         default n
689         help
690           Harmless to select this even if hardware does not support full
691           4GB physical memory.
692
693 config TEGRA_LP1_950
694         bool "LP1 low core voltage"
695         default n
696         depends on ARCH_TEGRA_3x_SOC
697         help
698                 Enable support for LP1 Core voltage to set to lowest
699
700 config TEGRA_LATENCY_ALLOWANCE
701         bool "Allow memory clients to configure latency allowance"
702         help
703           Latency allowance is a per-memory-client setting that tells the
704           memory controller how long it can ignore a request in favor of
705           others. In other words, It indicates how long a request from specific
706           memory client can wait before it is served.
707           Enabling this option allows memory clients configure the
708           latency allowance as per their bandwidth requirement.
709
710 config TEGRA_LATENCY_ALLOWANCE_SCALING
711         bool "Enable latency allowance scaling"
712         depends on TEGRA_LATENCY_ALLOWANCE
713         help
714           Enables latency allowance scaling, which enables scaling
715           programmed latency allowance values based on fifo threshold levels
716           set for for display and vi hardware.
717
718 config TEGRA_MC_PTSA
719         bool "Enable MC PTSA programming"
720         depends on TEGRA_LATENCY_ALLOWANCE
721         help
722           Enables Priority Tier Snap Arbiter programming in
723           Memory Controller. PTSA is a Memory Controller feature that
724           allows specifying the bandwidth necessary for ISO clients.
725
726 config TEGRA_DC_USE_HW_BPP
727         bool "Default Bits Per Pixel value from tegra DC hardware"
728         depends on TEGRA_DC
729         default n
730         help
731           Programs platform data to inform DC driver to use current
732           hardware value for bits per pixel setting.  Useful for
733           preserving and displaying framebuffer content from bootloader.
734
735 config TEGRA_ISOMGR
736         bool "Isochronous Bandwidth Manager "
737         help
738           When enabled, drivers for ISO units can obtain ISO BW.
739           The memory controller (MC) for each Tegra platform can supply
740           a limited amount of isochronous (real-time) bandwidth.  When
741           enabled, isomgr will manage a pool of ISO BW.
742
743 config TEGRA_ISOMGR_POOL_KB_PER_SEC
744         int "Size of isomgr pool "
745         default 0
746         help
747           Set this maximum ISO BW (in Kbytes/sec) that platform supports.
748           The memory controller (MC) for each Tegra platform can supply
749           a limited amount of isochronous (real-time) bandwidth.  Each
750           platform must specify the maximum amount of ISO BW that isomgr
751           should manage.
752
753 config TEGRA_ISOMGR_SYSFS
754         bool "Visibility into Isochronous Bandwidth Manager state "
755         depends on TEGRA_ISOMGR
756         help
757           When enabled, sysfs can be used to query isomgr state.
758           This is used for visibility into isomgr state.  It could
759           be useful in debug or in understanding performance on a
760           running system.
761
762 config TEGRA_ISOMGR_DEBUG
763         bool "Inject stimulus into Isochronous Bandwidth Manager "
764         depends on TEGRA_ISOMGR && TEGRA_ISOMGR_SYSFS
765         help
766           When enabled, sysfs can be used to inject stimulus into isomgr.
767           This is used to generate stimulus to isomgr for debug.  It's
768           especially useful for contriving isomgr tests.  You can write
769           user space tests that exercise isomgr in ways that drivers
770           couldn't easily accommodate.
771
772 config TEGRA_IO_DPD
773         bool "Allow IO DPD"
774         depends on ARCH_TEGRA_3x_SOC
775         depends on PM_SLEEP
776         default y
777         help
778           Allow devices listed in tegra_list_io_dpd[] to go into
779           Deep Power Down (DPD) state. This is a temporary config
780           option until a proper way is implemented to resolve this issue.
781
782 config TEGRA_USE_DFLL_RANGE
783         int "Default CPU DFLL operating range"
784         depends on ARCH_TEGRA_HAS_CL_DVFS
785         range 0 2
786         default "1" if TEGRA_SILICON_PLATFORM
787         default "0"
788         help
789           Defines default range for dynamic frequency lock loop (DFLL)
790           to be used as CPU clock source:
791           "0" - DFLL is not used,
792           "1" - DFLL is used as a source for all CPU rates
793           "2" - DFLL is used only for high rates above crossover with
794                 PLL dvfs curve
795
796 config TEGRA_SOCTHERM
797         bool "Enable soctherm"
798         depends on ARCH_TEGRA_11x_SOC
799         default y
800         help
801           Enables use of soctherm for thermal management.
802
803 config TEGRA_VIRTUAL_CPUID
804         bool "virtualized CPUID"
805         depends on !TRUSTED_FOUNDATIONS
806         depends on ARCH_TEGRA_HAS_SYMMETRIC_CPU_PWR_GATE
807         default n
808         help
809           Enables virtualized CPUID.
810 endif