Kconfig 6.4 KB

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