Kconfig 6.5 KB

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