Kconfig 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177
  1. # SPDX-License-Identifier: GPL-2.0-only
  2. if ARCH_TEGRA
  3. # 32-bit ARM SoCs
  4. if ARM
  5. config ARCH_TEGRA_2x_SOC
  6. bool "Enable support for Tegra20 family"
  7. select ARCH_NEEDS_CPU_IDLE_COUPLED if SMP
  8. select ARM_ERRATA_720789
  9. select ARM_ERRATA_754327 if SMP
  10. select ARM_ERRATA_764369 if SMP
  11. select PINCTRL_TEGRA20
  12. select PL310_ERRATA_727915 if CACHE_L2X0
  13. select PL310_ERRATA_769419 if CACHE_L2X0
  14. select SOC_TEGRA_FLOWCTRL
  15. select SOC_TEGRA_PMC
  16. select SOC_TEGRA20_VOLTAGE_COUPLER if REGULATOR
  17. select TEGRA_TIMER
  18. help
  19. Support for NVIDIA Tegra AP20 and T20 processors, based on the
  20. ARM CortexA9MP CPU and the ARM PL310 L2 cache controller
  21. config ARCH_TEGRA_3x_SOC
  22. bool "Enable support for Tegra30 family"
  23. select ARM_ERRATA_754322
  24. select ARM_ERRATA_764369 if SMP
  25. select PINCTRL_TEGRA30
  26. select PL310_ERRATA_769419 if CACHE_L2X0
  27. select SOC_TEGRA_FLOWCTRL
  28. select SOC_TEGRA_PMC
  29. select SOC_TEGRA30_VOLTAGE_COUPLER if REGULATOR
  30. select TEGRA_TIMER
  31. help
  32. Support for NVIDIA Tegra T30 processor family, based on the
  33. ARM CortexA9MP CPU and the ARM PL310 L2 cache controller
  34. config ARCH_TEGRA_114_SOC
  35. bool "Enable support for Tegra114 family"
  36. select ARM_ERRATA_798181 if SMP
  37. select HAVE_ARM_ARCH_TIMER
  38. select PINCTRL_TEGRA114
  39. select SOC_TEGRA_FLOWCTRL
  40. select SOC_TEGRA_PMC
  41. select TEGRA_TIMER
  42. help
  43. Support for NVIDIA Tegra T114 processor family, based on the
  44. ARM CortexA15MP CPU
  45. config ARCH_TEGRA_124_SOC
  46. bool "Enable support for Tegra124 family"
  47. select HAVE_ARM_ARCH_TIMER
  48. select PINCTRL_TEGRA124
  49. select SOC_TEGRA_FLOWCTRL
  50. select SOC_TEGRA_PMC
  51. select TEGRA_TIMER
  52. help
  53. Support for NVIDIA Tegra T124 processor family, based on the
  54. ARM CortexA15MP CPU
  55. endif
  56. # 64-bit ARM SoCs
  57. if ARM64
  58. config ARCH_TEGRA_132_SOC
  59. bool "NVIDIA Tegra132 SoC"
  60. select PINCTRL_TEGRA124
  61. select SOC_TEGRA_FLOWCTRL
  62. select SOC_TEGRA_PMC
  63. help
  64. Enable support for NVIDIA Tegra132 SoC, based on the Denver
  65. ARMv8 CPU. The Tegra132 SoC is similar to the Tegra124 SoC,
  66. but contains an NVIDIA Denver CPU complex in place of
  67. Tegra124's "4+1" Cortex-A15 CPU complex.
  68. config ARCH_TEGRA_210_SOC
  69. bool "NVIDIA Tegra210 SoC"
  70. select PINCTRL_TEGRA210
  71. select SOC_TEGRA_FLOWCTRL
  72. select SOC_TEGRA_PMC
  73. select TEGRA_TIMER
  74. help
  75. Enable support for the NVIDIA Tegra210 SoC. Also known as Tegra X1,
  76. the Tegra210 has four Cortex-A57 cores paired with four Cortex-A53
  77. cores in a switched configuration. It features a GPU of the Maxwell
  78. architecture with support for DX11, SM4, OpenGL 4.5, OpenGL ES 3.1
  79. and providing 256 CUDA cores. It supports hardware-accelerated en-
  80. and decoding of various video standards including H.265, H.264 and
  81. VP8 at 4K resolution and up to 60 fps.
  82. Besides the multimedia features it also comes with a variety of I/O
  83. controllers, such as GPIO, I2C, SPI, SDHCI, PCIe, SATA and XHCI, to
  84. name only a few.
  85. config ARCH_TEGRA_186_SOC
  86. bool "NVIDIA Tegra186 SoC"
  87. depends on !CPU_BIG_ENDIAN
  88. select PINCTRL_TEGRA186
  89. select MAILBOX
  90. select SOC_TEGRA_PMC
  91. help
  92. Enable support for the NVIDIA Tegar186 SoC. The Tegra186 features a
  93. combination of Denver and Cortex-A57 CPU cores and a GPU based on
  94. the Pascal architecture. It contains an ADSP with a Cortex-A9 CPU
  95. used for audio processing, hardware video encoders/decoders with
  96. multi-format support, ISP for image capture processing and BPMP for
  97. power management.
  98. config ARCH_TEGRA_194_SOC
  99. bool "NVIDIA Tegra194 SoC"
  100. depends on !CPU_BIG_ENDIAN
  101. select MAILBOX
  102. select PINCTRL_TEGRA194
  103. select SOC_TEGRA_PMC
  104. help
  105. Enable support for the NVIDIA Tegra194 SoC.
  106. config ARCH_TEGRA_234_SOC
  107. bool "NVIDIA Tegra234 SoC"
  108. depends on !CPU_BIG_ENDIAN
  109. select MAILBOX
  110. select PINCTRL_TEGRA234
  111. select SOC_TEGRA_PMC
  112. help
  113. Enable support for the NVIDIA Tegra234 SoC.
  114. config ARCH_TEGRA_241_SOC
  115. bool "NVIDIA Tegra241 SoC"
  116. help
  117. Enable support for the NVIDIA Tegra241 SoC.
  118. config ARCH_TEGRA_264_SOC
  119. bool "NVIDIA Tegra264 SoC"
  120. depends on !CPU_BIG_ENDIAN
  121. select MAILBOX
  122. select SOC_TEGRA_PMC
  123. help
  124. Enable support for the NVIDIA Tegra264 SoC.
  125. endif
  126. endif
  127. config SOC_TEGRA_FUSE
  128. def_bool y
  129. depends on ARCH_TEGRA
  130. select SOC_BUS
  131. config SOC_TEGRA_FLOWCTRL
  132. bool
  133. config SOC_TEGRA_PMC
  134. bool
  135. select GENERIC_PINCONF
  136. select IRQ_DOMAIN_HIERARCHY
  137. select PM_OPP
  138. select PM_GENERIC_DOMAINS
  139. select REGMAP
  140. config SOC_TEGRA20_VOLTAGE_COUPLER
  141. bool "Voltage scaling support for Tegra20 SoCs"
  142. depends on ARCH_TEGRA_2x_SOC || COMPILE_TEST
  143. depends on REGULATOR
  144. config SOC_TEGRA30_VOLTAGE_COUPLER
  145. bool "Voltage scaling support for Tegra30 SoCs"
  146. depends on ARCH_TEGRA_3x_SOC || COMPILE_TEST
  147. depends on REGULATOR
  148. config SOC_TEGRA_CBB
  149. tristate "Tegra driver to handle error from CBB"
  150. depends on ARCH_TEGRA_194_SOC || ARCH_TEGRA_234_SOC
  151. default y
  152. help
  153. Support for handling error from Tegra Control Backbone(CBB).
  154. This driver handles the errors from CBB and prints debug
  155. information about the failed transactions.