Merge branch 'next/cleanup-samsung-iommu' of git://git.kernel.org/pub/scm/linux/kerne...
[cascardo/linux.git] / arch / arm / mach-tegra / Kconfig
1 if ARCH_TEGRA
2
3 comment "NVIDIA Tegra options"
4
5 config 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
27 config 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
48 config TEGRA_PCI
49         bool "PCI Express support"
50         depends on ARCH_TEGRA_2x_SOC
51         select PCI
52
53 comment "Tegra board type"
54
55 config MACH_HARMONY
56        bool "Harmony board"
57        depends on ARCH_TEGRA_2x_SOC
58        select MACH_HAS_SND_SOC_TEGRA_WM8903 if SND_SOC
59        help
60          Support for nVidia Harmony development platform
61
62 config MACH_KAEN
63        bool "Kaen board"
64        depends on ARCH_TEGRA_2x_SOC
65        select MACH_SEABOARD
66        select MACH_HAS_SND_SOC_TEGRA_WM8903 if SND_SOC
67        help
68          Support for the Kaen version of Seaboard
69
70 config MACH_PAZ00
71        bool "Paz00 board"
72        depends on ARCH_TEGRA_2x_SOC
73        help
74          Support for the Toshiba AC100/Dynabook AZ netbook
75
76 config MACH_SEABOARD
77        bool "Seaboard board"
78        depends on ARCH_TEGRA_2x_SOC
79        select MACH_HAS_SND_SOC_TEGRA_WM8903 if SND_SOC
80        help
81          Support for nVidia Seaboard development platform. It will
82          also be included for some of the derivative boards that
83          have large similarities with the seaboard design.
84
85 config MACH_TEGRA_DT
86         bool "Generic Tegra20 board (FDT support)"
87         depends on ARCH_TEGRA_2x_SOC
88         select USE_OF
89         help
90           Support for generic NVIDIA Tegra20 boards using Flattened Device Tree
91
92 config MACH_TRIMSLICE
93        bool "TrimSlice board"
94        depends on ARCH_TEGRA_2x_SOC
95        select TEGRA_PCI
96        help
97          Support for CompuLab TrimSlice platform
98
99 config MACH_WARIO
100        bool "Wario board"
101        depends on ARCH_TEGRA_2x_SOC
102        select MACH_SEABOARD
103        help
104          Support for the Wario version of Seaboard
105
106 config MACH_VENTANA
107        bool "Ventana board"
108        depends on ARCH_TEGRA_2x_SOC
109        select MACH_TEGRA_DT
110        help
111          Support for the nVidia Ventana development platform
112
113 choice
114         prompt "Default low-level debug console UART"
115         default TEGRA_DEBUG_UART_NONE
116
117 config TEGRA_DEBUG_UART_NONE
118         bool "None"
119
120 config TEGRA_DEBUG_UARTA
121         bool "UART-A"
122
123 config TEGRA_DEBUG_UARTB
124         bool "UART-B"
125
126 config TEGRA_DEBUG_UARTC
127         bool "UART-C"
128
129 config TEGRA_DEBUG_UARTD
130         bool "UART-D"
131
132 config TEGRA_DEBUG_UARTE
133         bool "UART-E"
134
135 endchoice
136
137 choice
138         prompt "Automatic low-level debug console UART"
139         default TEGRA_DEBUG_UART_AUTO_NONE
140
141 config TEGRA_DEBUG_UART_AUTO_NONE
142         bool "None"
143
144 config TEGRA_DEBUG_UART_AUTO_ODMDATA
145         bool "Via ODMDATA"
146         help
147           Automatically determines which UART to use for low-level debug based
148           on the ODMDATA value. This value is part of the BCT, and is written
149           to the boot memory device using nvflash, or other flashing tool.
150           When bits 19:18 are 3, then bits 17:15 indicate which UART to use;
151           0/1/2/3/4 are UART A/B/C/D/E.
152
153 config TEGRA_DEBUG_UART_AUTO_SCRATCH
154         bool "Via UART scratch register"
155         help
156           Automatically determines which UART to use for low-level debug based
157           on the UART scratch register value. Some bootloaders put ASCII 'D'
158           in this register when they initialize their own console UART output.
159           Using this option allows the kernel to automatically pick the same
160           UART.
161
162 endchoice
163
164 config TEGRA_SYSTEM_DMA
165         bool "Enable system DMA driver for NVIDIA Tegra SoCs"
166         default y
167         help
168           Adds system DMA functionality for NVIDIA Tegra SoCs, used by
169           several Tegra device drivers
170
171 config TEGRA_EMC_SCALING_ENABLE
172         bool "Enable scaling the memory frequency"
173
174 endif