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