treewide: remove redundant IS_ERR() before error code check
[linux/fpc-iii.git] / drivers / soc / tegra / Kconfig
blob84bd615c4a924f7d3e2ccfd578d534292aba157d
1 # SPDX-License-Identifier: GPL-2.0-only
2 if ARCH_TEGRA
4 # 32-bit ARM SoCs
5 if ARM
7 config ARCH_TEGRA_2x_SOC
8         bool "Enable support for Tegra20 family"
9         select ARCH_NEEDS_CPU_IDLE_COUPLED if SMP
10         select ARM_ERRATA_720789
11         select ARM_ERRATA_754327 if SMP
12         select ARM_ERRATA_764369 if SMP
13         select PINCTRL_TEGRA20
14         select PL310_ERRATA_727915 if CACHE_L2X0
15         select PL310_ERRATA_769419 if CACHE_L2X0
16         select SOC_TEGRA_FLOWCTRL
17         select SOC_TEGRA_PMC
18         select SOC_TEGRA20_VOLTAGE_COUPLER
19         select TEGRA_TIMER
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
24 config ARCH_TEGRA_3x_SOC
25         bool "Enable support for Tegra30 family"
26         select ARM_ERRATA_754322
27         select ARM_ERRATA_764369 if SMP
28         select PINCTRL_TEGRA30
29         select PL310_ERRATA_769419 if CACHE_L2X0
30         select SOC_TEGRA_FLOWCTRL
31         select SOC_TEGRA_PMC
32         select SOC_TEGRA30_VOLTAGE_COUPLER
33         select TEGRA_TIMER
34         help
35           Support for NVIDIA Tegra T30 processor family, based on the
36           ARM CortexA9MP CPU and the ARM PL310 L2 cache controller
38 config ARCH_TEGRA_114_SOC
39         bool "Enable support for Tegra114 family"
40         select ARM_ERRATA_798181 if SMP
41         select HAVE_ARM_ARCH_TIMER
42         select PINCTRL_TEGRA114
43         select SOC_TEGRA_FLOWCTRL
44         select SOC_TEGRA_PMC
45         select TEGRA_TIMER
46         help
47           Support for NVIDIA Tegra T114 processor family, based on the
48           ARM CortexA15MP CPU
50 config ARCH_TEGRA_124_SOC
51         bool "Enable support for Tegra124 family"
52         select HAVE_ARM_ARCH_TIMER
53         select PINCTRL_TEGRA124
54         select SOC_TEGRA_FLOWCTRL
55         select SOC_TEGRA_PMC
56         select TEGRA_TIMER
57         help
58           Support for NVIDIA Tegra T124 processor family, based on the
59           ARM CortexA15MP CPU
61 endif
63 # 64-bit ARM SoCs
64 if ARM64
66 config ARCH_TEGRA_132_SOC
67         bool "NVIDIA Tegra132 SoC"
68         select PINCTRL_TEGRA124
69         select SOC_TEGRA_FLOWCTRL
70         select SOC_TEGRA_PMC
71         help
72           Enable support for NVIDIA Tegra132 SoC, based on the Denver
73           ARMv8 CPU.  The Tegra132 SoC is similar to the Tegra124 SoC,
74           but contains an NVIDIA Denver CPU complex in place of
75           Tegra124's "4+1" Cortex-A15 CPU complex.
77 config ARCH_TEGRA_210_SOC
78         bool "NVIDIA Tegra210 SoC"
79         select PINCTRL_TEGRA210
80         select SOC_TEGRA_FLOWCTRL
81         select SOC_TEGRA_PMC
82         select TEGRA_TIMER
83         help
84           Enable support for the NVIDIA Tegra210 SoC. Also known as Tegra X1,
85           the Tegra210 has four Cortex-A57 cores paired with four Cortex-A53
86           cores in a switched configuration. It features a GPU of the Maxwell
87           architecture with support for DX11, SM4, OpenGL 4.5, OpenGL ES 3.1
88           and providing 256 CUDA cores. It supports hardware-accelerated en-
89           and decoding of various video standards including H.265, H.264 and
90           VP8 at 4K resolution and up to 60 fps.
92           Besides the multimedia features it also comes with a variety of I/O
93           controllers, such as GPIO, I2C, SPI, SDHCI, PCIe, SATA and XHCI, to
94           name only a few.
96 config ARCH_TEGRA_186_SOC
97         bool "NVIDIA Tegra186 SoC"
98         select MAILBOX
99         select TEGRA_BPMP
100         select TEGRA_HSP_MBOX
101         select TEGRA_IVC
102         select SOC_TEGRA_PMC
103         help
104           Enable support for the NVIDIA Tegar186 SoC. The Tegra186 features a
105           combination of Denver and Cortex-A57 CPU cores and a GPU based on
106           the Pascal architecture. It contains an ADSP with a Cortex-A9 CPU
107           used for audio processing, hardware video encoders/decoders with
108           multi-format support, ISP for image capture processing and BPMP for
109           power management.
111 config ARCH_TEGRA_194_SOC
112         bool "NVIDIA Tegra194 SoC"
113         select MAILBOX
114         select PINCTRL_TEGRA194
115         select TEGRA_BPMP
116         select TEGRA_HSP_MBOX
117         select TEGRA_IVC
118         select SOC_TEGRA_PMC
119         help
120           Enable support for the NVIDIA Tegra194 SoC.
122 endif
123 endif
125 config SOC_TEGRA_FUSE
126         def_bool y
127         depends on ARCH_TEGRA
128         select SOC_BUS
130 config SOC_TEGRA_FLOWCTRL
131         bool
133 config SOC_TEGRA_PMC
134         bool
136 config SOC_TEGRA_POWERGATE_BPMP
137         def_bool y
138         depends on PM_GENERIC_DOMAINS
139         depends on TEGRA_BPMP
141 config SOC_TEGRA20_VOLTAGE_COUPLER
142         bool "Voltage scaling support for Tegra20 SoCs"
143         depends on ARCH_TEGRA_2x_SOC || COMPILE_TEST
145 config SOC_TEGRA30_VOLTAGE_COUPLER
146         bool "Voltage scaling support for Tegra30 SoCs"
147         depends on ARCH_TEGRA_3x_SOC || COMPILE_TEST