[ARM/tegra] Add Tegra3 support
[linux-2.6.git] / arch / arm / mach-tegra / Kconfig
1 if ARCH_TEGRA
2
3 comment "NVIDIA Tegra options"
4
5 choice
6         prompt "Select Tegra processor family for target system"
7
8 config ARCH_TEGRA_2x_SOC
9         bool "Tegra 2 family"
10         select CPU_V7
11         select ARM_GIC
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
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         help
21           Support for NVIDIA Tegra AP20 and T20 processors, based on the
22           ARM CortexA9MP CPU and the ARM PL310 L2 cache controller
23
24 config ARCH_TEGRA_3x_SOC
25         bool "Tegra 3 family"
26         select CPU_V7
27         select ARM_GIC
28         select ARCH_REQUIRE_GPIOLIB
29         select TEGRA_IOVMM
30         select USB_ARCH_HAS_EHCI if USB_SUPPORT
31         select USB_EHCI_TEGRA if USB_SUPPORT
32         select USB_ULPI if USB_SUPPORT
33         select USB_ULPI_VIEWPORT if USB_SUPPORT
34         help
35           Support for NVIDIA Tegra 3 family of SoCs, based upon the
36           ARM CortexA9MP CPU and the ARM PL310 L2 cache controller
37
38 endchoice
39
40 config TEGRA_PCI
41         bool "PCI Express support"
42         select PCI
43
44 comment "Tegra board type"
45
46 config MACH_HARMONY
47        bool "Harmony board"
48        select MACH_HAS_SND_SOC_TEGRA_WM8903 if SND_SOC
49        help
50          Support for NVIDIA Harmony development platform
51
52 config MACH_VENTANA
53        bool "Ventana board"
54        help
55          Support for NVIDIA Ventana development platform
56
57 config MACH_KAEN
58        bool "Kaen board"
59        select MACH_SEABOARD
60        select MACH_HAS_SND_SOC_TEGRA_WM8903 if SND_SOC
61        help
62          Support for the Kaen version of Seaboard
63
64 config MACH_PAZ00
65        bool "Paz00 board"
66        help
67          Support for the Toshiba AC100/Dynabook AZ netbook
68
69 config MACH_SEABOARD
70        bool "Seaboard board"
71        select MACH_HAS_SND_SOC_TEGRA_WM8903 if SND_SOC
72        help
73          Support for nVidia Seaboard development platform. It will
74          also be included for some of the derivative boards that
75          have large similarities with the seaboard design.
76
77 config MACH_TEGRA_DT
78         bool "Generic Tegra board (FDT support)"
79         select USE_OF
80         help
81           Support for generic nVidia Tegra boards using Flattened Device Tree
82
83 config MACH_TRIMSLICE
84        bool "TrimSlice board"
85        select TEGRA_PCI
86        help
87          Support for CompuLab TrimSlice platform
88
89 config MACH_WARIO
90        bool "Wario board"
91        select MACH_SEABOARD
92        help
93          Support for the Wario version of Seaboard
94
95 # Whistler
96
97 # Aruba
98
99 # Cardhu
100
101 # Enterprise
102
103 config TEGRA_FPGA_PLATFORM
104         bool
105
106 choice
107         prompt "Low-level debug console UART"
108         default TEGRA_DEBUG_UART_NONE
109
110 config TEGRA_DEBUG_UART_NONE
111         bool "None"
112
113 config TEGRA_DEBUG_UARTA
114         bool "UART-A"
115
116 config TEGRA_DEBUG_UARTB
117         bool "UART-B"
118
119 config TEGRA_DEBUG_UARTC
120         bool "UART-C"
121
122 config TEGRA_DEBUG_UARTD
123         bool "UART-D"
124
125 config TEGRA_DEBUG_UARTE
126         bool "UART-E"
127
128 endchoice
129
130 config TEGRA_SYSTEM_DMA
131         bool "Enable system DMA driver for NVIDIA Tegra SoCs"
132         default y
133         help
134           Adds system DMA functionality for NVIDIA Tegra SoCs, used by
135           several Tegra device drivers
136
137 config TEGRA_SPI_SLAVE
138        tristate "Nvidia Tegra SPI slave driver"
139        depends on ARCH_TEGRA
140        select TEGRA_SYSTEM_DMA
141        help
142          SPI slave driver for NVIDIA Tegra SoCs
143
144 config TEGRA_PWM
145         tristate "Enable PWM driver"
146         select HAVE_PWM
147         help
148           Enable support for the Tegra PWM controller(s).
149
150 config TEGRA_EMC_SCALING_ENABLE
151         bool "Enable scaling the memory frequency"
152
153 config TEGRA_CPU_DVFS
154         bool "Enable voltage scaling on Tegra CPU"
155         default y
156
157 config TEGRA_CORE_DVFS
158         bool "Enable voltage scaling on Tegra core"
159         depends on TEGRA_CPU_DVFS
160         default y
161
162 config TEGRA_IOVMM_GART
163         bool "Enable I/O virtual memory manager for GART"
164         depends on ARCH_TEGRA_2x_SOC
165         default y
166         select TEGRA_IOVMM
167         help
168           Enables support for remapping discontiguous physical memory
169           shared with the operating system into contiguous I/O virtual
170           space through the GART hardware included on Tegra SoCs
171
172 config TEGRA_IOVMM_SMMU
173         bool "Enable I/O virtual memory manager for SMMU"
174         depends on ARCH_TEGRA_3x_SOC
175         default y
176         select TEGRA_IOVMM
177         help
178           Enables support for remapping discontiguous physical memory
179           shared with the operating system into contiguous I/O virtual
180           space through the SMMU hardware included on Tegra SoCs
181
182 config TEGRA_IOVMM
183         bool
184
185 config TEGRA_ARB_SEMAPHORE
186         bool
187
188 config TEGRA_THERMAL_THROTTLE
189        bool "Enable throttling of CPU speed on overtemp"
190        depends on CPU_FREQ
191        default y
192        help
193          Also requires enabling a temperature sensor such as NCT1008.
194
195 config WIFI_CONTROL_FUNC
196         bool "Enable WiFi control function abstraction"
197         help
198           Enables Power/Reset/Carddetect function abstraction
199
200 config TEGRA_CLOCK_DEBUG_WRITE
201         bool "Enable debugfs write access to clock tree"
202         depends on DEBUG_FS
203         default n
204
205 config TEGRA_MC_PROFILE
206         tristate "Enable profiling memory controller utilization"
207         default n
208         help
209           When enabled, provides a mechanism to perform statistical
210           sampling of the memory controller usage on a client-by-client
211           basis, and report the log through sysfs.
212
213 endif