Kconfig 6.7 KB

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