Kconfig 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197
  1. # SPDX-License-Identifier: GPL-2.0
  2. menu "DesignWare PCI Core Support"
  3. config PCIE_DW
  4. bool
  5. config PCIE_DW_HOST
  6. bool
  7. depends on PCI
  8. depends on PCI_MSI_IRQ_DOMAIN
  9. select PCIE_DW
  10. config PCIE_DW_EP
  11. bool
  12. depends on PCI_ENDPOINT
  13. select PCIE_DW
  14. config PCI_DRA7XX
  15. bool
  16. config PCI_DRA7XX_HOST
  17. bool "TI DRA7xx PCIe controller Host Mode"
  18. depends on SOC_DRA7XX || COMPILE_TEST
  19. depends on PCI && PCI_MSI_IRQ_DOMAIN
  20. depends on OF && HAS_IOMEM && TI_PIPE3
  21. select PCIE_DW_HOST
  22. select PCI_DRA7XX
  23. default y
  24. help
  25. Enables support for the PCIe controller in the DRA7xx SoC to work in
  26. host mode. There are two instances of PCIe controller in DRA7xx.
  27. This controller can work either as EP or RC. In order to enable
  28. host-specific features PCI_DRA7XX_HOST must be selected and in order
  29. to enable device-specific features PCI_DRA7XX_EP must be selected.
  30. This uses the DesignWare core.
  31. config PCI_DRA7XX_EP
  32. bool "TI DRA7xx PCIe controller Endpoint Mode"
  33. depends on SOC_DRA7XX || COMPILE_TEST
  34. depends on PCI_ENDPOINT
  35. depends on OF && HAS_IOMEM && TI_PIPE3
  36. select PCIE_DW_EP
  37. select PCI_DRA7XX
  38. help
  39. Enables support for the PCIe controller in the DRA7xx SoC to work in
  40. endpoint mode. There are two instances of PCIe controller in DRA7xx.
  41. This controller can work either as EP or RC. In order to enable
  42. host-specific features PCI_DRA7XX_HOST must be selected and in order
  43. to enable device-specific features PCI_DRA7XX_EP must be selected.
  44. This uses the DesignWare core.
  45. config PCIE_DW_PLAT
  46. bool "Platform bus based DesignWare PCIe Controller"
  47. depends on PCI
  48. depends on PCI_MSI_IRQ_DOMAIN
  49. select PCIE_DW_HOST
  50. ---help---
  51. This selects the DesignWare PCIe controller support. Select this if
  52. you have a PCIe controller on Platform bus.
  53. If you have a controller with this interface, say Y or M here.
  54. If unsure, say N.
  55. config PCI_EXYNOS
  56. bool "Samsung Exynos PCIe controller"
  57. depends on PCI
  58. depends on SOC_EXYNOS5440
  59. depends on PCI_MSI_IRQ_DOMAIN
  60. select PCIEPORTBUS
  61. select PCIE_DW_HOST
  62. config PCI_IMX6
  63. bool "Freescale i.MX6 PCIe controller"
  64. depends on PCI
  65. depends on SOC_IMX6Q
  66. depends on PCI_MSI_IRQ_DOMAIN
  67. select PCIEPORTBUS
  68. select PCIE_DW_HOST
  69. config PCIE_SPEAR13XX
  70. bool "STMicroelectronics SPEAr PCIe controller"
  71. depends on PCI
  72. depends on ARCH_SPEAR13XX
  73. depends on PCI_MSI_IRQ_DOMAIN
  74. select PCIEPORTBUS
  75. select PCIE_DW_HOST
  76. help
  77. Say Y here if you want PCIe support on SPEAr13XX SoCs.
  78. config PCI_KEYSTONE
  79. bool "TI Keystone PCIe controller"
  80. depends on PCI
  81. depends on ARCH_KEYSTONE
  82. depends on PCI_MSI_IRQ_DOMAIN
  83. select PCIEPORTBUS
  84. select PCIE_DW_HOST
  85. help
  86. Say Y here if you want to enable PCI controller support on Keystone
  87. SoCs. The PCI controller on Keystone is based on DesignWare hardware
  88. and therefore the driver re-uses the DesignWare core functions to
  89. implement the driver.
  90. config PCI_LAYERSCAPE
  91. bool "Freescale Layerscape PCIe controller"
  92. depends on PCI
  93. depends on OF && (ARM || ARCH_LAYERSCAPE)
  94. depends on PCI_MSI_IRQ_DOMAIN
  95. select MFD_SYSCON
  96. select PCIE_DW_HOST
  97. help
  98. Say Y here if you want PCIe controller support on Layerscape SoCs.
  99. config PCI_HISI
  100. depends on OF && ARM64
  101. bool "HiSilicon Hip05 and Hip06 SoCs PCIe controllers"
  102. depends on PCI
  103. depends on PCI_MSI_IRQ_DOMAIN
  104. select PCIEPORTBUS
  105. select PCIE_DW_HOST
  106. select PCI_HOST_COMMON
  107. help
  108. Say Y here if you want PCIe controller support on HiSilicon
  109. Hip05 and Hip06 SoCs
  110. config PCIE_QCOM
  111. bool "Qualcomm PCIe controller"
  112. depends on PCI
  113. depends on ARCH_QCOM && OF
  114. depends on PCI_MSI_IRQ_DOMAIN
  115. select PCIEPORTBUS
  116. select PCIE_DW_HOST
  117. help
  118. Say Y here to enable PCIe controller support on Qualcomm SoCs. The
  119. PCIe controller uses the DesignWare core plus Qualcomm-specific
  120. hardware wrappers.
  121. config PCIE_ARMADA_8K
  122. bool "Marvell Armada-8K PCIe controller"
  123. depends on PCI
  124. depends on ARCH_MVEBU
  125. depends on PCI_MSI_IRQ_DOMAIN
  126. select PCIEPORTBUS
  127. select PCIE_DW_HOST
  128. help
  129. Say Y here if you want to enable PCIe controller support on
  130. Armada-8K SoCs. The PCIe controller on Armada-8K is based on
  131. DesignWare hardware and therefore the driver re-uses the
  132. DesignWare core functions to implement the driver.
  133. config PCIE_ARTPEC6
  134. bool
  135. config PCIE_ARTPEC6_HOST
  136. bool "Axis ARTPEC-6 PCIe controller Host Mode"
  137. depends on MACH_ARTPEC6
  138. depends on PCI && PCI_MSI_IRQ_DOMAIN
  139. select PCIEPORTBUS
  140. select PCIE_DW_HOST
  141. select PCIE_ARTPEC6
  142. help
  143. Enables support for the PCIe controller in the ARTPEC-6 SoC to work in
  144. host mode. This uses the DesignWare core.
  145. config PCIE_ARTPEC6_EP
  146. bool "Axis ARTPEC-6 PCIe controller Endpoint Mode"
  147. depends on MACH_ARTPEC6
  148. depends on PCI_ENDPOINT
  149. select PCIE_DW_EP
  150. select PCIE_ARTPEC6
  151. help
  152. Enables support for the PCIe controller in the ARTPEC-6 SoC to work in
  153. endpoint mode. This uses the DesignWare core.
  154. config PCIE_KIRIN
  155. depends on OF && ARM64
  156. bool "HiSilicon Kirin series SoCs PCIe controllers"
  157. depends on PCI_MSI_IRQ_DOMAIN
  158. depends on PCI
  159. select PCIEPORTBUS
  160. select PCIE_DW_HOST
  161. help
  162. Say Y here if you want PCIe controller support
  163. on HiSilicon Kirin series SoCs.
  164. config PCIE_HISI_STB
  165. bool "HiSilicon STB SoCs PCIe controllers"
  166. depends on ARCH_HISI
  167. depends on PCI
  168. depends on PCI_MSI_IRQ_DOMAIN
  169. select PCIEPORTBUS
  170. select PCIE_DW_HOST
  171. help
  172. Say Y here if you want PCIe controller support on HiSilicon STB SoCs
  173. endmenu