5098e2b95e
I have hit the following build error:
armv7a-hardfloat-linux-gnueabi-ld: drivers/soc/tegra/pmc.o: in function `pinconf_generic_dt_node_to_map_pin':
pmc.c:(.text+0x500): undefined reference to `pinconf_generic_dt_node_to_map'
armv7a-hardfloat-linux-gnueabi-ld: drivers/soc/tegra/pmc.o:(.rodata+0x1f88): undefined reference to `pinconf_generic_dt_free_map'
So SOC_TEGRA_PMC should select GENERIC_PINCONF.
Fixes: 4a37f11c8f
("soc/tegra: pmc: Implement pad configuration via pinctrl")
Cc: stable <stable@vger.kernel.org>
Signed-off-by: Corentin Labbe <clabbe@baylibre.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
150 lines
4.1 KiB
Plaintext
150 lines
4.1 KiB
Plaintext
# SPDX-License-Identifier: GPL-2.0-only
|
|
if ARCH_TEGRA
|
|
|
|
# 32-bit ARM SoCs
|
|
if ARM
|
|
|
|
config ARCH_TEGRA_2x_SOC
|
|
bool "Enable support for Tegra20 family"
|
|
select ARCH_NEEDS_CPU_IDLE_COUPLED if SMP
|
|
select ARM_ERRATA_720789
|
|
select ARM_ERRATA_754327 if SMP
|
|
select ARM_ERRATA_764369 if SMP
|
|
select PINCTRL_TEGRA20
|
|
select PL310_ERRATA_727915 if CACHE_L2X0
|
|
select PL310_ERRATA_769419 if CACHE_L2X0
|
|
select SOC_TEGRA_FLOWCTRL
|
|
select SOC_TEGRA_PMC
|
|
select SOC_TEGRA20_VOLTAGE_COUPLER
|
|
select TEGRA_TIMER
|
|
help
|
|
Support for NVIDIA Tegra AP20 and T20 processors, based on the
|
|
ARM CortexA9MP CPU and the ARM PL310 L2 cache controller
|
|
|
|
config ARCH_TEGRA_3x_SOC
|
|
bool "Enable support for Tegra30 family"
|
|
select ARM_ERRATA_754322
|
|
select ARM_ERRATA_764369 if SMP
|
|
select PINCTRL_TEGRA30
|
|
select PL310_ERRATA_769419 if CACHE_L2X0
|
|
select SOC_TEGRA_FLOWCTRL
|
|
select SOC_TEGRA_PMC
|
|
select SOC_TEGRA30_VOLTAGE_COUPLER
|
|
select TEGRA_TIMER
|
|
help
|
|
Support for NVIDIA Tegra T30 processor family, based on the
|
|
ARM CortexA9MP CPU and the ARM PL310 L2 cache controller
|
|
|
|
config ARCH_TEGRA_114_SOC
|
|
bool "Enable support for Tegra114 family"
|
|
select ARM_ERRATA_798181 if SMP
|
|
select HAVE_ARM_ARCH_TIMER
|
|
select PINCTRL_TEGRA114
|
|
select SOC_TEGRA_FLOWCTRL
|
|
select SOC_TEGRA_PMC
|
|
select TEGRA_TIMER
|
|
help
|
|
Support for NVIDIA Tegra T114 processor family, based on the
|
|
ARM CortexA15MP CPU
|
|
|
|
config ARCH_TEGRA_124_SOC
|
|
bool "Enable support for Tegra124 family"
|
|
select HAVE_ARM_ARCH_TIMER
|
|
select PINCTRL_TEGRA124
|
|
select SOC_TEGRA_FLOWCTRL
|
|
select SOC_TEGRA_PMC
|
|
select TEGRA_TIMER
|
|
help
|
|
Support for NVIDIA Tegra T124 processor family, based on the
|
|
ARM CortexA15MP CPU
|
|
|
|
endif
|
|
|
|
# 64-bit ARM SoCs
|
|
if ARM64
|
|
|
|
config ARCH_TEGRA_132_SOC
|
|
bool "NVIDIA Tegra132 SoC"
|
|
select PINCTRL_TEGRA124
|
|
select SOC_TEGRA_FLOWCTRL
|
|
select SOC_TEGRA_PMC
|
|
help
|
|
Enable support for NVIDIA Tegra132 SoC, based on the Denver
|
|
ARMv8 CPU. The Tegra132 SoC is similar to the Tegra124 SoC,
|
|
but contains an NVIDIA Denver CPU complex in place of
|
|
Tegra124's "4+1" Cortex-A15 CPU complex.
|
|
|
|
config ARCH_TEGRA_210_SOC
|
|
bool "NVIDIA Tegra210 SoC"
|
|
select PINCTRL_TEGRA210
|
|
select SOC_TEGRA_FLOWCTRL
|
|
select SOC_TEGRA_PMC
|
|
select TEGRA_TIMER
|
|
help
|
|
Enable support for the NVIDIA Tegra210 SoC. Also known as Tegra X1,
|
|
the Tegra210 has four Cortex-A57 cores paired with four Cortex-A53
|
|
cores in a switched configuration. It features a GPU of the Maxwell
|
|
architecture with support for DX11, SM4, OpenGL 4.5, OpenGL ES 3.1
|
|
and providing 256 CUDA cores. It supports hardware-accelerated en-
|
|
and decoding of various video standards including H.265, H.264 and
|
|
VP8 at 4K resolution and up to 60 fps.
|
|
|
|
Besides the multimedia features it also comes with a variety of I/O
|
|
controllers, such as GPIO, I2C, SPI, SDHCI, PCIe, SATA and XHCI, to
|
|
name only a few.
|
|
|
|
config ARCH_TEGRA_186_SOC
|
|
bool "NVIDIA Tegra186 SoC"
|
|
select MAILBOX
|
|
select TEGRA_BPMP
|
|
select TEGRA_HSP_MBOX
|
|
select TEGRA_IVC
|
|
select SOC_TEGRA_PMC
|
|
help
|
|
Enable support for the NVIDIA Tegar186 SoC. The Tegra186 features a
|
|
combination of Denver and Cortex-A57 CPU cores and a GPU based on
|
|
the Pascal architecture. It contains an ADSP with a Cortex-A9 CPU
|
|
used for audio processing, hardware video encoders/decoders with
|
|
multi-format support, ISP for image capture processing and BPMP for
|
|
power management.
|
|
|
|
config ARCH_TEGRA_194_SOC
|
|
bool "NVIDIA Tegra194 SoC"
|
|
select MAILBOX
|
|
select PINCTRL_TEGRA194
|
|
select TEGRA_BPMP
|
|
select TEGRA_HSP_MBOX
|
|
select TEGRA_IVC
|
|
select SOC_TEGRA_PMC
|
|
help
|
|
Enable support for the NVIDIA Tegra194 SoC.
|
|
|
|
endif
|
|
endif
|
|
|
|
config SOC_TEGRA_FUSE
|
|
def_bool y
|
|
depends on ARCH_TEGRA
|
|
select SOC_BUS
|
|
select TEGRA20_APB_DMA if ARCH_TEGRA_2x_SOC
|
|
|
|
config SOC_TEGRA_FLOWCTRL
|
|
bool
|
|
|
|
config SOC_TEGRA_PMC
|
|
bool
|
|
select GENERIC_PINCONF
|
|
|
|
config SOC_TEGRA_POWERGATE_BPMP
|
|
def_bool y
|
|
depends on PM_GENERIC_DOMAINS
|
|
depends on TEGRA_BPMP
|
|
|
|
config SOC_TEGRA20_VOLTAGE_COUPLER
|
|
bool "Voltage scaling support for Tegra20 SoCs"
|
|
depends on ARCH_TEGRA_2x_SOC || COMPILE_TEST
|
|
|
|
config SOC_TEGRA30_VOLTAGE_COUPLER
|
|
bool "Voltage scaling support for Tegra30 SoCs"
|
|
depends on ARCH_TEGRA_3x_SOC || COMPILE_TEST
|