Kconfig 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284
  1. config CREATE_ARCH_SYMLINK
  2. bool
  3. config HAVE_ARCH_IOREMAP
  4. bool
  5. choice
  6. prompt "Architecture select"
  7. default SANDBOX
  8. config ARC
  9. bool "ARC architecture"
  10. select ARCH_EARLY_INIT_R
  11. select ARC_TIMER
  12. select CLK
  13. select HAVE_PRIVATE_LIBGCC
  14. select SUPPORT_OF_CONTROL
  15. select TIMER
  16. config ARM
  17. bool "ARM architecture"
  18. select CREATE_ARCH_SYMLINK
  19. select HAVE_PRIVATE_LIBGCC if !ARM64
  20. select SUPPORT_OF_CONTROL
  21. config M68K
  22. bool "M68000 architecture"
  23. select HAVE_PRIVATE_LIBGCC
  24. select SYS_BOOT_GET_CMDLINE
  25. select SYS_BOOT_GET_KBD
  26. config MICROBLAZE
  27. bool "MicroBlaze architecture"
  28. select SUPPORT_OF_CONTROL
  29. imply CMD_IRQ
  30. config MIPS
  31. bool "MIPS architecture"
  32. select HAVE_ARCH_IOREMAP
  33. select HAVE_PRIVATE_LIBGCC
  34. select SUPPORT_OF_CONTROL
  35. config NDS32
  36. bool "NDS32 architecture"
  37. select SUPPORT_OF_CONTROL
  38. config NIOS2
  39. bool "Nios II architecture"
  40. select CPU
  41. select DM
  42. select OF_CONTROL
  43. select SUPPORT_OF_CONTROL
  44. imply CMD_DM
  45. config PPC
  46. bool "PowerPC architecture"
  47. select HAVE_PRIVATE_LIBGCC
  48. select SUPPORT_OF_CONTROL
  49. select SYS_BOOT_GET_CMDLINE
  50. select SYS_BOOT_GET_KBD
  51. config RISCV
  52. bool "RISC-V architecture"
  53. select CREATE_ARCH_SYMLINK
  54. select SUPPORT_OF_CONTROL
  55. select OF_CONTROL
  56. select DM
  57. imply DM_SERIAL
  58. imply DM_ETH
  59. imply DM_MMC
  60. imply DM_SPI
  61. imply DM_SPI_FLASH
  62. imply BLK
  63. imply CLK
  64. imply MTD
  65. imply TIMER
  66. imply CMD_DM
  67. config SANDBOX
  68. bool "Sandbox"
  69. select BOARD_LATE_INIT
  70. select DM
  71. select DM_GPIO
  72. select DM_I2C
  73. select DM_KEYBOARD
  74. select DM_MMC
  75. select DM_SERIAL
  76. select DM_SPI
  77. select DM_SPI_FLASH
  78. select HAVE_BLOCK_DEVICE
  79. select LZO
  80. select SPI
  81. select SUPPORT_OF_CONTROL
  82. imply BITREVERSE
  83. select BLOBLIST
  84. imply CMD_DM
  85. imply CMD_GETTIME
  86. imply CMD_HASH
  87. imply CMD_IO
  88. imply CMD_IOTRACE
  89. imply CMD_LZMADEC
  90. imply CMD_SATA
  91. imply CMD_SF_TEST
  92. imply CRC32_VERIFY
  93. imply FAT_WRITE
  94. imply FIRMWARE
  95. imply HASH_VERIFY
  96. imply LZMA
  97. imply SCSI
  98. imply TEE
  99. imply AVB_VERIFY
  100. imply LIBAVB
  101. imply CMD_AVB
  102. imply UDP_FUNCTION_FASTBOOT
  103. imply VIRTIO_MMIO
  104. imply VIRTIO_PCI
  105. imply VIRTIO_SANDBOX
  106. imply VIRTIO_BLK
  107. imply VIRTIO_NET
  108. imply DM_SOUND
  109. imply PCH
  110. config SH
  111. bool "SuperH architecture"
  112. select HAVE_PRIVATE_LIBGCC
  113. config X86
  114. bool "x86 architecture"
  115. select SUPPORT_SPL
  116. select SUPPORT_TPL
  117. select CREATE_ARCH_SYMLINK
  118. select DM
  119. select DM_PCI
  120. select HAVE_ARCH_IOMAP
  121. select HAVE_PRIVATE_LIBGCC
  122. select OF_CONTROL
  123. select PCI
  124. select SUPPORT_OF_CONTROL
  125. select TIMER
  126. select USE_PRIVATE_LIBGCC
  127. select X86_TSC_TIMER
  128. imply BLK
  129. imply CMD_DM
  130. imply CMD_FPGA_LOADMK
  131. imply CMD_GETTIME
  132. imply CMD_IO
  133. imply CMD_IRQ
  134. imply CMD_PCI
  135. imply CMD_SF_TEST
  136. imply CMD_ZBOOT
  137. imply DM_ETH
  138. imply DM_GPIO
  139. imply DM_KEYBOARD
  140. imply DM_MMC
  141. imply DM_RTC
  142. imply DM_SCSI
  143. imply DM_SERIAL
  144. imply DM_SPI
  145. imply DM_SPI_FLASH
  146. imply DM_USB
  147. imply DM_VIDEO
  148. imply SYSRESET
  149. imply SPL_SYSRESET
  150. imply SYSRESET_X86
  151. imply USB_ETHER_ASIX
  152. imply USB_ETHER_SMSC95XX
  153. imply USB_HOST_ETHER
  154. imply PCH
  155. imply RTC_MC146818
  156. # Thing to enable for when SPL/TPL are enabled: SPL
  157. imply SPL_DM
  158. imply SPL_OF_LIBFDT
  159. imply SPL_DRIVERS_MISC_SUPPORT
  160. imply SPL_GPIO_SUPPORT
  161. imply SPL_LIBCOMMON_SUPPORT
  162. imply SPL_LIBGENERIC_SUPPORT
  163. imply SPL_SERIAL_SUPPORT
  164. imply SPL_SPI_FLASH_SUPPORT
  165. imply SPL_SPI_SUPPORT
  166. imply SPL_OF_CONTROL
  167. imply SPL_TIMER
  168. imply SPL_REGMAP
  169. imply SPL_SYSCON
  170. # TPL
  171. imply TPL_DM
  172. imply TPL_OF_LIBFDT
  173. imply TPL_DRIVERS_MISC_SUPPORT
  174. imply TPL_GPIO_SUPPORT
  175. imply TPL_LIBCOMMON_SUPPORT
  176. imply TPL_LIBGENERIC_SUPPORT
  177. imply TPL_SERIAL_SUPPORT
  178. imply TPL_SPI_FLASH_SUPPORT
  179. imply TPL_SPI_SUPPORT
  180. imply TPL_OF_CONTROL
  181. imply TPL_TIMER
  182. imply TPL_REGMAP
  183. imply TPL_SYSCON
  184. config XTENSA
  185. bool "Xtensa architecture"
  186. select CREATE_ARCH_SYMLINK
  187. select SUPPORT_OF_CONTROL
  188. endchoice
  189. config SYS_ARCH
  190. string
  191. help
  192. This option should contain the architecture name to build the
  193. appropriate arch/<CONFIG_SYS_ARCH> directory.
  194. All the architectures should specify this option correctly.
  195. config SYS_CPU
  196. string
  197. help
  198. This option should contain the CPU name to build the correct
  199. arch/<CONFIG_SYS_ARCH>/cpu/<CONFIG_SYS_CPU> directory.
  200. This is optional. For those targets without the CPU directory,
  201. leave this option empty.
  202. config SYS_SOC
  203. string
  204. help
  205. This option should contain the SoC name to build the directory
  206. arch/<CONFIG_SYS_ARCH>/cpu/<CONFIG_SYS_CPU>/<CONFIG_SYS_SOC>.
  207. This is optional. For those targets without the SoC directory,
  208. leave this option empty.
  209. config SYS_VENDOR
  210. string
  211. help
  212. This option should contain the vendor name of the target board.
  213. If it is set and
  214. board/<CONFIG_SYS_VENDOR>/common/Makefile exists, the vendor common
  215. directory is compiled.
  216. If CONFIG_SYS_BOARD is also set, the sources under
  217. board/<CONFIG_SYS_VENDOR>/<CONFIG_SYS_BOARD> directory are compiled.
  218. This is optional. For those targets without the vendor directory,
  219. leave this option empty.
  220. config SYS_BOARD
  221. string
  222. help
  223. This option should contain the name of the target board.
  224. If it is set, either board/<CONFIG_SYS_VENDOR>/<CONFIG_SYS_BOARD>
  225. or board/<CONFIG_SYS_BOARD> directory is compiled depending on
  226. whether CONFIG_SYS_VENDOR is set or not.
  227. This is optional. For those targets without the board directory,
  228. leave this option empty.
  229. config SYS_CONFIG_NAME
  230. string
  231. help
  232. This option should contain the base name of board header file.
  233. The header file include/configs/<CONFIG_SYS_CONFIG_NAME>.h
  234. should be included from include/config.h.
  235. config SYS_DISABLE_DCACHE_OPS
  236. bool
  237. help
  238. This option disables dcache flush and dcache invalidation
  239. operations. For example, on coherent systems where cache
  240. operatios are not required, enable this option to avoid them.
  241. Note that, its up to the individual architectures to implement
  242. this functionality.
  243. source "arch/arc/Kconfig"
  244. source "arch/arm/Kconfig"
  245. source "arch/m68k/Kconfig"
  246. source "arch/microblaze/Kconfig"
  247. source "arch/mips/Kconfig"
  248. source "arch/nds32/Kconfig"
  249. source "arch/nios2/Kconfig"
  250. source "arch/powerpc/Kconfig"
  251. source "arch/sandbox/Kconfig"
  252. source "arch/sh/Kconfig"
  253. source "arch/x86/Kconfig"
  254. source "arch/xtensa/Kconfig"
  255. source "arch/riscv/Kconfig"