Kconfig 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211
  1. menuconfig ARCH_BCM
  2. bool "Broadcom SoC Support"
  3. depends on ARCH_MULTI_V6_V7
  4. help
  5. This enables support for Broadcom ARM based SoC chips
  6. if ARCH_BCM
  7. comment "IPROC architected SoCs"
  8. config ARCH_BCM_IPROC
  9. bool
  10. select ARM_GIC
  11. select CACHE_L2X0
  12. select HAVE_ARM_SCU if SMP
  13. select HAVE_ARM_TWD if SMP
  14. select ARM_GLOBAL_TIMER
  15. select CLKSRC_MMIO
  16. select GPIOLIB
  17. select ARM_AMBA
  18. select PINCTRL
  19. help
  20. This enables support for systems based on Broadcom IPROC architected SoCs.
  21. The IPROC complex contains one or more ARM CPUs along with common
  22. core periperals. Application specific SoCs are created by adding a
  23. uArchitecture containing peripherals outside of the IPROC complex.
  24. Currently supported SoCs are Cygnus.
  25. config ARCH_BCM_CYGNUS
  26. bool "Broadcom Cygnus Support"
  27. depends on ARCH_MULTI_V7
  28. select ARCH_BCM_IPROC
  29. help
  30. Enable support for the Cygnus family,
  31. which includes the following variants:
  32. BCM11300, BCM11320, BCM11350, BCM11360,
  33. BCM58300, BCM58302, BCM58303, BCM58305.
  34. config ARCH_BCM_NSP
  35. bool "Broadcom Northstar Plus SoC Support"
  36. depends on ARCH_MULTI_V7
  37. select ARCH_BCM_IPROC
  38. select ARM_ERRATA_754322
  39. select ARM_ERRATA_775420
  40. select ARM_ERRATA_764369 if SMP
  41. select HAVE_SMP
  42. help
  43. Support for Broadcom Northstar Plus SoC.
  44. Broadcom Northstar Plus family of SoCs are used for switching control
  45. and management applications as well as residential router/gateway
  46. applications. The SoC features dual core Cortex A9 ARM CPUs,
  47. integrating several peripheral interfaces including multiple Gigabit
  48. Ethernet PHYs, DDR3 memory, PCIE Gen-2, USB 2.0 and USB 3.0, serial and
  49. NAND flash, SATA and several other IO controllers.
  50. config ARCH_BCM_5301X
  51. bool "Broadcom BCM470X / BCM5301X ARM SoC"
  52. depends on ARCH_MULTI_V7
  53. select ARCH_BCM_IPROC
  54. select ARM_ERRATA_754322
  55. select ARM_ERRATA_775420
  56. select ARM_ERRATA_764369 if SMP
  57. select HAVE_SMP
  58. help
  59. Support for Broadcom BCM470X and BCM5301X SoCs with ARM CPU cores.
  60. This is a network SoC line mostly used in home routers and
  61. wifi access points, it's internal name is Northstar.
  62. This inclused the following SoC: BCM53010, BCM53011, BCM53012,
  63. BCM53014, BCM53015, BCM53016, BCM53017, BCM53018, BCM4707,
  64. BCM4708 and BCM4709.
  65. Do not confuse this with the BCM4760 which is a totally
  66. different SoC or with the older BCM47XX and BCM53XX based
  67. network SoC using a MIPS CPU, they are supported by arch/mips/bcm47xx
  68. comment "KONA architected SoCs"
  69. config ARCH_BCM_MOBILE
  70. bool
  71. select GPIOLIB
  72. select ARM_ERRATA_754322
  73. select ARM_ERRATA_775420
  74. select ARM_GIC
  75. select GPIO_BCM_KONA
  76. select TICK_ONESHOT
  77. select HAVE_ARM_ARCH_TIMER
  78. select PINCTRL
  79. select ARCH_BCM_MOBILE_SMP if SMP
  80. select BCM_KONA_TIMER
  81. help
  82. This enables support for systems based on Broadcom mobile SoCs.
  83. config ARCH_BCM_281XX
  84. bool "Broadcom BCM281XX SoC family"
  85. depends on ARCH_MULTI_V7
  86. select ARCH_BCM_MOBILE
  87. select HAVE_SMP
  88. help
  89. Enable support for the BCM281XX family, which includes
  90. BCM11130, BCM11140, BCM11351, BCM28145 and BCM28155
  91. variants.
  92. config ARCH_BCM_21664
  93. bool "Broadcom BCM21664 SoC family"
  94. depends on ARCH_MULTI_V7
  95. select ARCH_BCM_MOBILE
  96. select HAVE_SMP
  97. help
  98. Enable support for the BCM21664 family, which includes
  99. BCM21663 and BCM21664 variants.
  100. config ARCH_BCM_23550
  101. bool "Broadcom BCM23550 SoC"
  102. depends on ARCH_MULTI_V7
  103. select ARCH_BCM_MOBILE
  104. select HAVE_SMP
  105. help
  106. Enable support for the BCM23550.
  107. config ARCH_BCM_MOBILE_L2_CACHE
  108. bool "Broadcom mobile SoC level 2 cache support"
  109. depends on ARCH_BCM_281XX || ARCH_BCM_21664
  110. default y
  111. select CACHE_L2X0
  112. select ARCH_BCM_MOBILE_SMC
  113. config ARCH_BCM_MOBILE_SMC
  114. bool
  115. depends on ARCH_BCM_MOBILE
  116. config ARCH_BCM_MOBILE_SMP
  117. bool
  118. depends on ARCH_BCM_MOBILE
  119. select HAVE_ARM_SCU
  120. select ARM_ERRATA_764369
  121. help
  122. SMP support for the BCM281XX, BCM21664 and BCM23550 SoC families.
  123. Provided as an option so SMP support for SoCs of this type
  124. can be disabled for an SMP-enabled kernel.
  125. comment "Other Architectures"
  126. config ARCH_BCM2835
  127. bool "Broadcom BCM2835 family"
  128. depends on ARCH_MULTI_V6 || ARCH_MULTI_V7
  129. select GPIOLIB
  130. select ARM_AMBA
  131. select ARM_ERRATA_411920 if ARCH_MULTI_V6
  132. select ARM_TIMER_SP804
  133. select HAVE_ARM_ARCH_TIMER if ARCH_MULTI_V7
  134. select CLKSRC_OF
  135. select BCM2835_TIMER
  136. select PINCTRL
  137. select PINCTRL_BCM2835
  138. help
  139. This enables support for the Broadcom BCM2835 and BCM2836 SoCs.
  140. This SoC is used in the Raspberry Pi and Roku 2 devices.
  141. config ARCH_BCM_53573
  142. bool "Broadcom BCM53573 SoC series support"
  143. depends on ARCH_MULTI_V7
  144. select ARCH_BCM_IPROC
  145. select HAVE_ARM_ARCH_TIMER
  146. help
  147. BCM53573 series is set of SoCs using ARM Cortex-A7 CPUs with wireless
  148. embedded in the chipset.
  149. This SoC line is mostly used in home routers and is some cheaper
  150. alternative for Northstar family.
  151. The base chip is BCM53573 and there are some packaging modifications
  152. like BCM47189 and BCM47452.
  153. config ARCH_BCM_63XX
  154. bool "Broadcom BCM63xx DSL SoC"
  155. depends on ARCH_MULTI_V7
  156. depends on MMU
  157. select ARM_ERRATA_754322
  158. select ARM_ERRATA_764369 if SMP
  159. select ARM_GIC
  160. select ARM_GLOBAL_TIMER
  161. select CACHE_L2X0
  162. select HAVE_ARM_ARCH_TIMER
  163. select HAVE_ARM_TWD if SMP
  164. select HAVE_ARM_SCU if SMP
  165. select HAVE_SMP
  166. help
  167. This enables support for systems based on Broadcom DSL SoCs.
  168. It currently supports the 'BCM63XX' ARM-based family, which includes
  169. the BCM63138 variant.
  170. config ARCH_BRCMSTB
  171. bool "Broadcom BCM7XXX based boards"
  172. depends on ARCH_MULTI_V7
  173. select ARM_GIC
  174. select ARM_ERRATA_798181 if SMP
  175. select HAVE_ARM_ARCH_TIMER
  176. select BRCMSTB_L2_IRQ
  177. select BCM7120_L2_IRQ
  178. select ARCH_DMA_ADDR_T_64BIT if ARM_LPAE
  179. select SOC_BRCMSTB
  180. select SOC_BUS
  181. help
  182. Say Y if you intend to run the kernel on a Broadcom ARM-based STB
  183. chipset.
  184. This enables support for Broadcom ARM-based set-top box chipsets,
  185. including the 7445 family of chips.
  186. endif