Kconfig 49 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092
  1. menu "ARM architecture"
  2. depends on ARM
  3. config SYS_ARCH
  4. default "arm"
  5. config ARM64
  6. bool
  7. select PHYS_64BIT
  8. select SYS_CACHE_SHIFT_6
  9. if ARM64
  10. config POSITION_INDEPENDENT
  11. bool "Generate position-independent pre-relocation code"
  12. help
  13. U-Boot expects to be linked to a specific hard-coded address, and to
  14. be loaded to and run from that address. This option lifts that
  15. restriction, thus allowing the code to be loaded to and executed from
  16. almost any 4K aligned address. This logic relies on the relocation
  17. information that is embedded in the binary to support U-Boot
  18. relocating itself to the top-of-RAM later during execution.
  19. config INIT_SP_RELATIVE
  20. bool "Specify the early stack pointer relative to the .bss section"
  21. default n if ARCH_QEMU
  22. default y if POSITION_INDEPENDENT
  23. help
  24. U-Boot typically uses a hard-coded value for the stack pointer
  25. before relocation. Enable this option to instead calculate the
  26. initial SP at run-time. This is useful to avoid hard-coding addresses
  27. into U-Boot, so that it can be loaded and executed at arbitrary
  28. addresses and thus avoid using arbitrary addresses at runtime.
  29. If this option is enabled, the early stack pointer is set to
  30. &_bss_start with a offset value added. The offset is specified by
  31. SYS_INIT_SP_BSS_OFFSET.
  32. config SYS_INIT_SP_BSS_OFFSET
  33. int "Early stack offset from the .bss base address"
  34. depends on INIT_SP_RELATIVE
  35. default 524288
  36. help
  37. This option's value is the offset added to &_bss_start in order to
  38. calculate the stack pointer. This offset should be large enough so
  39. that the early malloc region, global data (gd), and early stack usage
  40. do not overlap any appended DTB.
  41. config LINUX_KERNEL_IMAGE_HEADER
  42. bool
  43. help
  44. Place a Linux kernel image header at the start of the U-Boot binary.
  45. The format of the header is described in the Linux kernel source at
  46. Documentation/arm64/booting.txt. This feature is useful since the
  47. image header reports the amount of memory (BSS and similar) that
  48. U-Boot needs to use, but which isn't part of the binary.
  49. if LINUX_KERNEL_IMAGE_HEADER
  50. config LNX_KRNL_IMG_TEXT_OFFSET_BASE
  51. hex
  52. help
  53. The value subtracted from CONFIG_SYS_TEXT_BASE to calculate the
  54. TEXT_OFFSET value written to the Linux kernel image header.
  55. endif
  56. endif
  57. config GIC_V3_ITS
  58. bool "ARM GICV3 ITS"
  59. select REGMAP
  60. select SYSCON
  61. select IRQ
  62. help
  63. ARM GICV3 Interrupt translation service (ITS).
  64. Basic support for programming locality specific peripheral
  65. interrupts (LPI) configuration tables and enable LPI tables.
  66. LPI configuration table can be used by u-boot or Linux.
  67. ARM GICV3 has limitation, once the LPI table is enabled, LPI
  68. configuration table can not be re-programmed, unless GICV3 reset.
  69. config STATIC_RELA
  70. bool
  71. default y if ARM64
  72. config DMA_ADDR_T_64BIT
  73. bool
  74. default y if ARM64
  75. config HAS_VBAR
  76. bool
  77. config HAS_THUMB2
  78. bool
  79. config GPIO_EXTRA_HEADER
  80. bool
  81. # Used for compatibility with asm files copied from the kernel
  82. config ARM_ASM_UNIFIED
  83. bool
  84. default y
  85. # Used for compatibility with asm files copied from the kernel
  86. config THUMB2_KERNEL
  87. bool
  88. config SYS_ICACHE_OFF
  89. bool "Do not enable icache"
  90. default n
  91. help
  92. Do not enable instruction cache in U-Boot.
  93. config SPL_SYS_ICACHE_OFF
  94. bool "Do not enable icache in SPL"
  95. depends on SPL
  96. default SYS_ICACHE_OFF
  97. help
  98. Do not enable instruction cache in SPL.
  99. config SYS_DCACHE_OFF
  100. bool "Do not enable dcache"
  101. default n
  102. help
  103. Do not enable data cache in U-Boot.
  104. config SPL_SYS_DCACHE_OFF
  105. bool "Do not enable dcache in SPL"
  106. depends on SPL
  107. default SYS_DCACHE_OFF
  108. help
  109. Do not enable data cache in SPL.
  110. config SYS_ARM_CACHE_CP15
  111. bool "CP15 based cache enabling support"
  112. help
  113. Select this if your processor suports enabling caches by using
  114. CP15 registers.
  115. config SYS_ARM_MMU
  116. bool "MMU-based Paged Memory Management Support"
  117. select SYS_ARM_CACHE_CP15
  118. help
  119. Select if you want MMU-based virtualised addressing space
  120. support via paged memory management.
  121. config SYS_ARM_MPU
  122. bool 'Use the ARM v7 PMSA Compliant MPU'
  123. help
  124. Some ARM systems without an MMU have instead a Memory Protection
  125. Unit (MPU) that defines the type and permissions for regions of
  126. memory.
  127. If your CPU has an MPU then you should choose 'y' here unless you
  128. know that you do not want to use the MPU.
  129. # If set, the workarounds for these ARM errata are applied early during U-Boot
  130. # startup. Note that in general these options force the workarounds to be
  131. # applied; no CPU-type/version detection exists, unlike the similar options in
  132. # the Linux kernel. Do not set these options unless they apply! Also note that
  133. # the following can be machine-specific errata. These do have ability to
  134. # provide rudimentary version and machine-specific checks, but expect no
  135. # product checks:
  136. # CONFIG_ARM_ERRATA_430973
  137. # CONFIG_ARM_ERRATA_454179
  138. # CONFIG_ARM_ERRATA_621766
  139. # CONFIG_ARM_ERRATA_798870
  140. # CONFIG_ARM_ERRATA_801819
  141. # CONFIG_ARM_CORTEX_A8_CVE_2017_5715
  142. # CONFIG_ARM_CORTEX_A15_CVE_2017_5715
  143. config ARM_ERRATA_430973
  144. bool
  145. config ARM_ERRATA_454179
  146. bool
  147. config ARM_ERRATA_621766
  148. bool
  149. config ARM_ERRATA_716044
  150. bool
  151. config ARM_ERRATA_725233
  152. bool
  153. config ARM_ERRATA_742230
  154. bool
  155. config ARM_ERRATA_743622
  156. bool
  157. config ARM_ERRATA_751472
  158. bool
  159. config ARM_ERRATA_761320
  160. bool
  161. config ARM_ERRATA_773022
  162. bool
  163. config ARM_ERRATA_774769
  164. bool
  165. config ARM_ERRATA_794072
  166. bool
  167. config ARM_ERRATA_798870
  168. bool
  169. config ARM_ERRATA_801819
  170. bool
  171. config ARM_ERRATA_826974
  172. bool
  173. config ARM_ERRATA_828024
  174. bool
  175. config ARM_ERRATA_829520
  176. bool
  177. config ARM_ERRATA_833069
  178. bool
  179. config ARM_ERRATA_833471
  180. bool
  181. config ARM_ERRATA_845369
  182. bool
  183. config ARM_ERRATA_852421
  184. bool
  185. config ARM_ERRATA_852423
  186. bool
  187. config ARM_ERRATA_855873
  188. bool
  189. config ARM_CORTEX_A8_CVE_2017_5715
  190. bool
  191. config ARM_CORTEX_A15_CVE_2017_5715
  192. bool
  193. config CPU_ARM720T
  194. bool
  195. select SYS_CACHE_SHIFT_5
  196. imply SYS_ARM_MMU
  197. config CPU_ARM920T
  198. bool
  199. select SYS_CACHE_SHIFT_5
  200. imply SYS_ARM_MMU
  201. config CPU_ARM926EJS
  202. bool
  203. select SYS_CACHE_SHIFT_5
  204. imply SYS_ARM_MMU
  205. config CPU_ARM946ES
  206. bool
  207. select SYS_CACHE_SHIFT_5
  208. imply SYS_ARM_MMU
  209. config CPU_ARM1136
  210. bool
  211. select SYS_CACHE_SHIFT_5
  212. imply SYS_ARM_MMU
  213. config CPU_ARM1176
  214. bool
  215. select HAS_VBAR
  216. select SYS_CACHE_SHIFT_5
  217. imply SYS_ARM_MMU
  218. config CPU_V7A
  219. bool
  220. select HAS_THUMB2
  221. select HAS_VBAR
  222. select SYS_CACHE_SHIFT_6
  223. imply SYS_ARM_MMU
  224. config CPU_V7M
  225. bool
  226. select HAS_THUMB2
  227. select SYS_ARM_MPU
  228. select SYS_CACHE_SHIFT_5
  229. select SYS_THUMB_BUILD
  230. select THUMB2_KERNEL
  231. config CPU_V7R
  232. bool
  233. select HAS_THUMB2
  234. select SYS_ARM_CACHE_CP15
  235. select SYS_ARM_MPU
  236. select SYS_CACHE_SHIFT_6
  237. config CPU_PXA
  238. bool
  239. select SYS_CACHE_SHIFT_5
  240. imply SYS_ARM_MMU
  241. config CPU_SA1100
  242. bool
  243. select SYS_CACHE_SHIFT_5
  244. imply SYS_ARM_MMU
  245. config SYS_CPU
  246. default "arm720t" if CPU_ARM720T
  247. default "arm920t" if CPU_ARM920T
  248. default "arm926ejs" if CPU_ARM926EJS
  249. default "arm946es" if CPU_ARM946ES
  250. default "arm1136" if CPU_ARM1136
  251. default "arm1176" if CPU_ARM1176
  252. default "armv7" if CPU_V7A
  253. default "armv7" if CPU_V7R
  254. default "armv7m" if CPU_V7M
  255. default "pxa" if CPU_PXA
  256. default "sa1100" if CPU_SA1100
  257. default "armv8" if ARM64
  258. config SYS_ARM_ARCH
  259. int
  260. default 4 if CPU_ARM720T
  261. default 4 if CPU_ARM920T
  262. default 5 if CPU_ARM926EJS
  263. default 5 if CPU_ARM946ES
  264. default 6 if CPU_ARM1136
  265. default 6 if CPU_ARM1176
  266. default 7 if CPU_V7A
  267. default 7 if CPU_V7M
  268. default 7 if CPU_V7R
  269. default 5 if CPU_PXA
  270. default 4 if CPU_SA1100
  271. default 8 if ARM64
  272. config SYS_CACHE_SHIFT_5
  273. bool
  274. config SYS_CACHE_SHIFT_6
  275. bool
  276. config SYS_CACHE_SHIFT_7
  277. bool
  278. config SYS_CACHELINE_SIZE
  279. int
  280. default 128 if SYS_CACHE_SHIFT_7
  281. default 64 if SYS_CACHE_SHIFT_6
  282. default 32 if SYS_CACHE_SHIFT_5
  283. choice
  284. prompt "Select the ARM data write cache policy"
  285. default SYS_ARM_CACHE_WRITETHROUGH if TARGET_BCMCYGNUS || \
  286. CPU_PXA || RZA1
  287. default SYS_ARM_CACHE_WRITEBACK
  288. config SYS_ARM_CACHE_WRITEBACK
  289. bool "Write-back (WB)"
  290. help
  291. A write updates the cache only and marks the cache line as dirty.
  292. External memory is updated only when the line is evicted or explicitly
  293. cleaned.
  294. config SYS_ARM_CACHE_WRITETHROUGH
  295. bool "Write-through (WT)"
  296. help
  297. A write updates both the cache and the external memory system.
  298. This does not mark the cache line as dirty.
  299. config SYS_ARM_CACHE_WRITEALLOC
  300. bool "Write allocation (WA)"
  301. help
  302. A cache line is allocated on a write miss. This means that executing a
  303. store instruction on the processor might cause a burst read to occur.
  304. There is a linefill to obtain the data for the cache line, before the
  305. write is performed.
  306. endchoice
  307. config ARCH_CPU_INIT
  308. bool "Enable ARCH_CPU_INIT"
  309. help
  310. Some architectures require a call to arch_cpu_init().
  311. Say Y here to enable it
  312. config SYS_ARCH_TIMER
  313. bool "ARM Generic Timer support"
  314. depends on CPU_V7A || ARM64
  315. default y if ARM64
  316. help
  317. The ARM Generic Timer (aka arch-timer) provides an architected
  318. interface to a timer source on an SoC.
  319. It is mandatory for ARMv8 implementation and widely available
  320. on ARMv7 systems.
  321. config ARM_SMCCC
  322. bool "Support for ARM SMC Calling Convention (SMCCC)"
  323. depends on CPU_V7A || ARM64
  324. select ARM_PSCI_FW
  325. help
  326. Say Y here if you want to enable ARM SMC Calling Convention.
  327. This should be enabled if U-Boot needs to communicate with system
  328. firmware (for example, PSCI) according to SMCCC.
  329. config SEMIHOSTING
  330. bool "support boot from semihosting"
  331. help
  332. In emulated environments, semihosting is a way for
  333. the hosted environment to call out to the emulator to
  334. retrieve files from the host machine.
  335. config SYS_THUMB_BUILD
  336. bool "Build U-Boot using the Thumb instruction set"
  337. depends on !ARM64
  338. help
  339. Use this flag to build U-Boot using the Thumb instruction set for
  340. ARM architectures. Thumb instruction set provides better code
  341. density. For ARM architectures that support Thumb2 this flag will
  342. result in Thumb2 code generated by GCC.
  343. config SPL_SYS_THUMB_BUILD
  344. bool "Build SPL using the Thumb instruction set"
  345. default y if SYS_THUMB_BUILD
  346. depends on !ARM64 && SPL
  347. help
  348. Use this flag to build SPL using the Thumb instruction set for
  349. ARM architectures. Thumb instruction set provides better code
  350. density. For ARM architectures that support Thumb2 this flag will
  351. result in Thumb2 code generated by GCC.
  352. config TPL_SYS_THUMB_BUILD
  353. bool "Build TPL using the Thumb instruction set"
  354. default y if SYS_THUMB_BUILD
  355. depends on TPL && !ARM64
  356. help
  357. Use this flag to build TPL using the Thumb instruction set for
  358. ARM architectures. Thumb instruction set provides better code
  359. density. For ARM architectures that support Thumb2 this flag will
  360. result in Thumb2 code generated by GCC.
  361. config SYS_L2CACHE_OFF
  362. bool "L2cache off"
  363. help
  364. If SoC does not support L2CACHE or one does not want to enable
  365. L2CACHE, choose this option.
  366. config ENABLE_ARM_SOC_BOOT0_HOOK
  367. bool "prepare BOOT0 header"
  368. help
  369. If the SoC's BOOT0 requires a header area filled with (magic)
  370. values, then choose this option, and create a file included as
  371. <asm/arch/boot0.h> which contains the required assembler code.
  372. config ARM_CORTEX_CPU_IS_UP
  373. bool
  374. default n
  375. config USE_ARCH_MEMCPY
  376. bool "Use an assembly optimized implementation of memcpy"
  377. default y
  378. depends on !ARM64
  379. help
  380. Enable the generation of an optimized version of memcpy.
  381. Such an implementation may be faster under some conditions
  382. but may increase the binary size.
  383. config SPL_USE_ARCH_MEMCPY
  384. bool "Use an assembly optimized implementation of memcpy for SPL"
  385. default y if USE_ARCH_MEMCPY
  386. depends on !ARM64 && SPL
  387. help
  388. Enable the generation of an optimized version of memcpy.
  389. Such an implementation may be faster under some conditions
  390. but may increase the binary size.
  391. config TPL_USE_ARCH_MEMCPY
  392. bool "Use an assembly optimized implementation of memcpy for TPL"
  393. default y if USE_ARCH_MEMCPY
  394. depends on !ARM64 && TPL
  395. help
  396. Enable the generation of an optimized version of memcpy.
  397. Such an implementation may be faster under some conditions
  398. but may increase the binary size.
  399. config USE_ARCH_MEMSET
  400. bool "Use an assembly optimized implementation of memset"
  401. default y
  402. depends on !ARM64
  403. help
  404. Enable the generation of an optimized version of memset.
  405. Such an implementation may be faster under some conditions
  406. but may increase the binary size.
  407. config SPL_USE_ARCH_MEMSET
  408. bool "Use an assembly optimized implementation of memset for SPL"
  409. default y if USE_ARCH_MEMSET
  410. depends on !ARM64 && SPL
  411. help
  412. Enable the generation of an optimized version of memset.
  413. Such an implementation may be faster under some conditions
  414. but may increase the binary size.
  415. config TPL_USE_ARCH_MEMSET
  416. bool "Use an assembly optimized implementation of memset for TPL"
  417. default y if USE_ARCH_MEMSET
  418. depends on !ARM64 && TPL
  419. help
  420. Enable the generation of an optimized version of memset.
  421. Such an implementation may be faster under some conditions
  422. but may increase the binary size.
  423. config ARM64_SUPPORT_AARCH32
  424. bool "ARM64 system support AArch32 execution state"
  425. depends on ARM64
  426. default y if !TARGET_THUNDERX_88XX
  427. help
  428. This ARM64 system supports AArch32 execution state.
  429. choice
  430. prompt "Target select"
  431. default TARGET_HIKEY
  432. config ARCH_AT91
  433. bool "Atmel AT91"
  434. select GPIO_EXTRA_HEADER
  435. select SPL_BOARD_INIT if SPL && !TARGET_SMARTWEB
  436. select SPL_SEPARATE_BSS if SPL
  437. config TARGET_ASPENITE
  438. bool "Support aspenite"
  439. select CPU_ARM926EJS
  440. select GPIO_EXTRA_HEADER
  441. config ARCH_DAVINCI
  442. bool "TI DaVinci"
  443. select CPU_ARM926EJS
  444. select GPIO_EXTRA_HEADER
  445. select SPL_DM_SPI if SPL
  446. imply CMD_SAVES
  447. help
  448. Support for TI's DaVinci platform.
  449. config ARCH_KIRKWOOD
  450. bool "Marvell Kirkwood"
  451. select ARCH_MISC_INIT
  452. select BOARD_EARLY_INIT_F
  453. select CPU_ARM926EJS
  454. select GPIO_EXTRA_HEADER
  455. config ARCH_MVEBU
  456. bool "Marvell MVEBU family (Armada XP/375/38x/3700/7K/8K)"
  457. select DM
  458. select DM_ETH
  459. select DM_SERIAL
  460. select DM_SPI
  461. select DM_SPI_FLASH
  462. select GPIO_EXTRA_HEADER
  463. select SPL_DM_SPI if SPL
  464. select SPL_DM_SPI_FLASH if SPL
  465. select OF_CONTROL
  466. select OF_SEPARATE
  467. select SPI
  468. imply CMD_DM
  469. config ARCH_ORION5X
  470. bool "Marvell Orion"
  471. select CPU_ARM926EJS
  472. select GPIO_EXTRA_HEADER
  473. config TARGET_STV0991
  474. bool "Support stv0991"
  475. select CPU_V7A
  476. select DM
  477. select DM_SERIAL
  478. select DM_SPI
  479. select DM_SPI_FLASH
  480. select GPIO_EXTRA_HEADER
  481. select PL01X_SERIAL
  482. select SPI
  483. select SPI_FLASH
  484. imply CMD_DM
  485. config TARGET_FLEA3
  486. bool "Support flea3"
  487. select CPU_ARM1136
  488. select GPIO_EXTRA_HEADER
  489. config ARCH_BCM283X
  490. bool "Broadcom BCM283X family"
  491. select DM
  492. select DM_GPIO
  493. select DM_SERIAL
  494. select GPIO_EXTRA_HEADER
  495. select OF_CONTROL
  496. select PL01X_SERIAL
  497. select SERIAL_SEARCH_ALL
  498. imply CMD_DM
  499. imply FAT_WRITE
  500. config ARCH_BCM63158
  501. bool "Broadcom BCM63158 family"
  502. select DM
  503. select OF_CONTROL
  504. imply CMD_DM
  505. config ARCH_BCM68360
  506. bool "Broadcom BCM68360 family"
  507. select DM
  508. select OF_CONTROL
  509. imply CMD_DM
  510. config ARCH_BCM6858
  511. bool "Broadcom BCM6858 family"
  512. select DM
  513. select OF_CONTROL
  514. imply CMD_DM
  515. config ARCH_BCMSTB
  516. bool "Broadcom BCM7XXX family"
  517. select CPU_V7A
  518. select DM
  519. select GPIO_EXTRA_HEADER
  520. select OF_CONTROL
  521. select OF_PRIOR_STAGE
  522. imply CMD_DM
  523. help
  524. This enables support for Broadcom ARM-based set-top box
  525. chipsets, including the 7445 family of chips.
  526. config TARGET_BCMCYGNUS
  527. bool "Support bcmcygnus"
  528. select CPU_V7A
  529. select GPIO_EXTRA_HEADER
  530. imply BCM_SF2_ETH
  531. imply BCM_SF2_ETH_GMAC
  532. imply CMD_HASH
  533. imply CRC32_VERIFY
  534. imply FAT_WRITE
  535. imply HASH_VERIFY
  536. imply NETDEVICES
  537. config TARGET_BCMNS2
  538. bool "Support Broadcom Northstar2"
  539. select ARM64
  540. select GPIO_EXTRA_HEADER
  541. help
  542. Support for Broadcom Northstar 2 SoCs. NS2 is a quad-core 64-bit
  543. ARMv8 Cortex-A57 processors targeting a broad range of networking
  544. applications.
  545. config TARGET_BCMNS3
  546. bool "Support Broadcom NS3"
  547. select ARM64
  548. select BOARD_LATE_INIT
  549. help
  550. Support for Broadcom Northstar 3 SoCs. NS3 is a octo-core 64-bit
  551. ARMv8 Cortex-A72 processors targeting a broad range of networking
  552. applications.
  553. config ARCH_EXYNOS
  554. bool "Samsung EXYNOS"
  555. select DM
  556. select DM_GPIO
  557. select DM_I2C
  558. select DM_KEYBOARD
  559. select DM_SERIAL
  560. select DM_SPI
  561. select DM_SPI_FLASH
  562. select SPI
  563. select GPIO_EXTRA_HEADER
  564. imply SYS_THUMB_BUILD
  565. imply CMD_DM
  566. imply FAT_WRITE
  567. config ARCH_S5PC1XX
  568. bool "Samsung S5PC1XX"
  569. select CPU_V7A
  570. select DM
  571. select DM_GPIO
  572. select DM_I2C
  573. select DM_SERIAL
  574. select GPIO_EXTRA_HEADER
  575. imply CMD_DM
  576. config ARCH_HIGHBANK
  577. bool "Calxeda Highbank"
  578. select CPU_V7A
  579. select PL01X_SERIAL
  580. select DM
  581. select DM_SERIAL
  582. select OF_CONTROL
  583. select OF_BOARD
  584. select CLK
  585. select CLK_CCF
  586. select AHCI
  587. select DM_ETH
  588. select PHYS_64BIT
  589. config ARCH_INTEGRATOR
  590. bool "ARM Ltd. Integrator family"
  591. select DM
  592. select DM_SERIAL
  593. select GPIO_EXTRA_HEADER
  594. select PL01X_SERIAL
  595. imply CMD_DM
  596. config ARCH_IPQ40XX
  597. bool "Qualcomm IPQ40xx SoCs"
  598. select CPU_V7A
  599. select DM
  600. select DM_GPIO
  601. select DM_SERIAL
  602. select DM_RESET
  603. select GPIO_EXTRA_HEADER
  604. select MSM_SMEM
  605. select PINCTRL
  606. select CLK
  607. select SMEM
  608. select OF_CONTROL
  609. imply CMD_DM
  610. config ARCH_KEYSTONE
  611. bool "TI Keystone"
  612. select CMD_POWEROFF
  613. select CPU_V7A
  614. select GPIO_EXTRA_HEADER
  615. select SUPPORT_SPL
  616. select SYS_ARCH_TIMER
  617. select SYS_THUMB_BUILD
  618. imply CMD_MTDPARTS
  619. imply CMD_SAVES
  620. imply FIT
  621. config ARCH_K3
  622. bool "Texas Instruments' K3 Architecture"
  623. select SPL
  624. select SUPPORT_SPL
  625. select FIT
  626. config ARCH_OMAP2PLUS
  627. bool "TI OMAP2+"
  628. select CPU_V7A
  629. select GPIO_EXTRA_HEADER
  630. select SPL_BOARD_INIT if SPL
  631. select SPL_STACK_R if SPL
  632. select SUPPORT_SPL
  633. imply TI_SYSC if DM && OF_CONTROL
  634. imply FIT
  635. config ARCH_MESON
  636. bool "Amlogic Meson"
  637. select GPIO_EXTRA_HEADER
  638. imply DISTRO_DEFAULTS
  639. imply DM_RNG
  640. help
  641. Support for the Meson SoC family developed by Amlogic Inc.,
  642. targeted at media players and tablet computers. We currently
  643. support the S905 (GXBaby) 64-bit SoC.
  644. config ARCH_MEDIATEK
  645. bool "MediaTek SoCs"
  646. select DM
  647. select GPIO_EXTRA_HEADER
  648. select OF_CONTROL
  649. select SPL_DM if SPL
  650. select SPL_LIBCOMMON_SUPPORT if SPL
  651. select SPL_LIBGENERIC_SUPPORT if SPL
  652. select SPL_OF_CONTROL if SPL
  653. select SUPPORT_SPL
  654. help
  655. Support for the MediaTek SoCs family developed by MediaTek Inc.
  656. Please refer to doc/README.mediatek for more information.
  657. config ARCH_LPC32XX
  658. bool "NXP LPC32xx platform"
  659. select CPU_ARM926EJS
  660. select DM
  661. select DM_GPIO
  662. select DM_SERIAL
  663. select GPIO_EXTRA_HEADER
  664. select SPL_DM if SPL
  665. select SUPPORT_SPL
  666. imply CMD_DM
  667. config ARCH_IMX8
  668. bool "NXP i.MX8 platform"
  669. select ARM64
  670. select DM
  671. select GPIO_EXTRA_HEADER
  672. select OF_CONTROL
  673. select ENABLE_ARM_SOC_BOOT0_HOOK
  674. config ARCH_IMX8M
  675. bool "NXP i.MX8M platform"
  676. select ARM64
  677. select GPIO_EXTRA_HEADER
  678. select SYS_FSL_HAS_SEC if IMX_HAB
  679. select SYS_FSL_SEC_COMPAT_4
  680. select SYS_FSL_SEC_LE
  681. select DM
  682. select SUPPORT_SPL
  683. imply CMD_DM
  684. config ARCH_IMXRT
  685. bool "NXP i.MXRT platform"
  686. select CPU_V7M
  687. select DM
  688. select DM_SERIAL
  689. select GPIO_EXTRA_HEADER
  690. select SUPPORT_SPL
  691. imply CMD_DM
  692. config ARCH_MX23
  693. bool "NXP i.MX23 family"
  694. select CPU_ARM926EJS
  695. select GPIO_EXTRA_HEADER
  696. select PL011_SERIAL
  697. select SUPPORT_SPL
  698. config ARCH_MX25
  699. bool "NXP MX25"
  700. select CPU_ARM926EJS
  701. select GPIO_EXTRA_HEADER
  702. imply MXC_GPIO
  703. config ARCH_MX28
  704. bool "NXP i.MX28 family"
  705. select CPU_ARM926EJS
  706. select GPIO_EXTRA_HEADER
  707. select PL011_SERIAL
  708. select SUPPORT_SPL
  709. config ARCH_MX31
  710. bool "NXP i.MX31 family"
  711. select CPU_ARM1136
  712. select GPIO_EXTRA_HEADER
  713. config ARCH_MX7ULP
  714. bool "NXP MX7ULP"
  715. select CPU_V7A
  716. select GPIO_EXTRA_HEADER
  717. select SYS_FSL_HAS_SEC if IMX_HAB
  718. select SYS_FSL_SEC_COMPAT_4
  719. select SYS_FSL_SEC_LE
  720. select ROM_UNIFIED_SECTIONS
  721. imply MXC_GPIO
  722. imply SYS_THUMB_BUILD
  723. config ARCH_MX7
  724. bool "Freescale MX7"
  725. select ARCH_MISC_INIT
  726. select CPU_V7A
  727. select GPIO_EXTRA_HEADER
  728. select SYS_FSL_HAS_SEC if IMX_HAB
  729. select SYS_FSL_SEC_COMPAT_4
  730. select SYS_FSL_SEC_LE
  731. imply BOARD_EARLY_INIT_F
  732. imply MXC_GPIO
  733. imply SYS_THUMB_BUILD
  734. config ARCH_MX6
  735. bool "Freescale MX6"
  736. select CPU_V7A
  737. select GPIO_EXTRA_HEADER
  738. select SYS_FSL_HAS_SEC
  739. select SYS_FSL_SEC_COMPAT_4
  740. select SYS_FSL_SEC_LE
  741. imply MXC_GPIO
  742. imply SYS_THUMB_BUILD
  743. if ARCH_MX6
  744. config SPL_LDSCRIPT
  745. default "arch/arm/mach-omap2/u-boot-spl.lds"
  746. endif
  747. config ARCH_MX5
  748. bool "Freescale MX5"
  749. select BOARD_EARLY_INIT_F
  750. select CPU_V7A
  751. select GPIO_EXTRA_HEADER
  752. imply MXC_GPIO
  753. config ARCH_NEXELL
  754. bool "Nexell S5P4418/S5P6818 SoC"
  755. select ENABLE_ARM_SOC_BOOT0_HOOK
  756. select DM
  757. select GPIO_EXTRA_HEADER
  758. config ARCH_OWL
  759. bool "Actions Semi OWL SoCs"
  760. select DM
  761. select DM_ETH
  762. select DM_SERIAL
  763. select GPIO_EXTRA_HEADER
  764. select OWL_SERIAL
  765. select CLK
  766. select CLK_OWL
  767. select OF_CONTROL
  768. select SYS_RELOC_GD_ENV_ADDR
  769. imply CMD_DM
  770. config ARCH_QEMU
  771. bool "QEMU Virtual Platform"
  772. select DM
  773. select DM_SERIAL
  774. select OF_CONTROL
  775. select PL01X_SERIAL
  776. imply CMD_DM
  777. imply DM_RNG
  778. imply DM_RTC
  779. imply RTC_PL031
  780. config ARCH_RMOBILE
  781. bool "Renesas ARM SoCs"
  782. select DM
  783. select DM_SERIAL
  784. select GPIO_EXTRA_HEADER
  785. imply BOARD_EARLY_INIT_F
  786. imply CMD_DM
  787. imply FAT_WRITE
  788. imply SYS_THUMB_BUILD
  789. imply ARCH_MISC_INIT if DISPLAY_CPUINFO
  790. config ARCH_SNAPDRAGON
  791. bool "Qualcomm Snapdragon SoCs"
  792. select ARM64
  793. select DM
  794. select DM_GPIO
  795. select DM_SERIAL
  796. select GPIO_EXTRA_HEADER
  797. select MSM_SMEM
  798. select OF_CONTROL
  799. select OF_SEPARATE
  800. select SMEM
  801. select SPMI
  802. imply CMD_DM
  803. config ARCH_SOCFPGA
  804. bool "Altera SOCFPGA family"
  805. select ARCH_EARLY_INIT_R
  806. select ARCH_MISC_INIT if !TARGET_SOCFPGA_ARRIA10
  807. select ARM64 if TARGET_SOCFPGA_SOC64
  808. select CPU_V7A if TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_ARRIA10
  809. select DM
  810. select DM_SERIAL
  811. select GPIO_EXTRA_HEADER
  812. select ENABLE_ARM_SOC_BOOT0_HOOK if TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_ARRIA10
  813. select OF_CONTROL
  814. select SPL_DM_RESET if DM_RESET
  815. select SPL_DM_SERIAL
  816. select SPL_LIBCOMMON_SUPPORT
  817. select SPL_LIBGENERIC_SUPPORT
  818. select SPL_NAND_SUPPORT if SPL_NAND_DENALI
  819. select SPL_OF_CONTROL
  820. select SPL_SEPARATE_BSS if TARGET_SOCFPGA_SOC64
  821. select SPL_SERIAL_SUPPORT
  822. select SPL_SYSRESET
  823. select SPL_WATCHDOG
  824. select SUPPORT_SPL
  825. select SYS_NS16550
  826. select SYS_THUMB_BUILD if TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_ARRIA10
  827. select SYSRESET
  828. select SYSRESET_SOCFPGA if TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_ARRIA10
  829. select SYSRESET_SOCFPGA_SOC64 if TARGET_SOCFPGA_SOC64
  830. imply CMD_DM
  831. imply CMD_MTDPARTS
  832. imply CRC32_VERIFY
  833. imply DM_SPI
  834. imply DM_SPI_FLASH
  835. imply FAT_WRITE
  836. imply SPL
  837. imply SPL_DM
  838. imply SPL_DM_SPI
  839. imply SPL_DM_SPI_FLASH
  840. imply SPL_LIBDISK_SUPPORT
  841. imply SPL_MMC_SUPPORT
  842. imply SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
  843. imply SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION_TYPE
  844. imply SPL_SPI_FLASH_SUPPORT
  845. imply SPL_SPI_SUPPORT
  846. imply L2X0_CACHE
  847. config ARCH_SUNXI
  848. bool "Support sunxi (Allwinner) SoCs"
  849. select BINMAN
  850. select CMD_GPIO
  851. select CMD_MMC if MMC
  852. select CMD_USB if DISTRO_DEFAULTS && USB_HOST
  853. select CLK
  854. select DM
  855. select DM_ETH
  856. select DM_GPIO
  857. select DM_KEYBOARD
  858. select DM_MMC if MMC
  859. select DM_SCSI if SCSI
  860. select DM_SERIAL
  861. select GPIO_EXTRA_HEADER
  862. select OF_BOARD_SETUP
  863. select OF_CONTROL
  864. select OF_SEPARATE
  865. select SPECIFY_CONSOLE_INDEX
  866. select SPL_STACK_R if SPL
  867. select SPL_SYS_MALLOC_SIMPLE if SPL
  868. select SPL_SYS_THUMB_BUILD if !ARM64
  869. select SUNXI_GPIO
  870. select SYS_NS16550
  871. select SYS_THUMB_BUILD if !ARM64
  872. select USB if DISTRO_DEFAULTS
  873. select USB_KEYBOARD if DISTRO_DEFAULTS && USB_HOST
  874. select USB_STORAGE if DISTRO_DEFAULTS && USB_HOST
  875. select SPL_USE_TINY_PRINTF
  876. select USE_PREBOOT
  877. select SYS_RELOC_GD_ENV_ADDR
  878. imply BOARD_LATE_INIT
  879. imply CMD_DM
  880. imply CMD_GPT
  881. imply CMD_UBI if MTD_RAW_NAND
  882. imply DISTRO_DEFAULTS
  883. imply FAT_WRITE
  884. imply FIT
  885. imply OF_LIBFDT_OVERLAY
  886. imply PRE_CONSOLE_BUFFER
  887. imply SPL_GPIO_SUPPORT
  888. imply SPL_LIBCOMMON_SUPPORT
  889. imply SPL_LIBGENERIC_SUPPORT
  890. imply SPL_MMC_SUPPORT if MMC
  891. imply SPL_POWER
  892. imply SPL_SERIAL_SUPPORT
  893. imply USB_GADGET
  894. config ARCH_U8500
  895. bool "ST-Ericsson U8500 Series"
  896. select CPU_V7A
  897. select DM
  898. select DM_GPIO
  899. select DM_MMC if MMC
  900. select DM_SERIAL
  901. select OF_CONTROL
  902. select SYSRESET
  903. select TIMER
  904. imply ARM_PL180_MMCI
  905. imply DM_RTC
  906. imply NOMADIK_MTU_TIMER
  907. imply PL01X_SERIAL
  908. imply RTC_PL031
  909. imply SYSRESET_SYSCON
  910. config ARCH_VERSAL
  911. bool "Support Xilinx Versal Platform"
  912. select ARM64
  913. select CLK
  914. select DM
  915. select DM_ETH if NET
  916. select DM_MMC if MMC
  917. select DM_SERIAL
  918. select GPIO_EXTRA_HEADER
  919. select OF_CONTROL
  920. imply BOARD_LATE_INIT
  921. imply ENV_VARS_UBOOT_RUNTIME_CONFIG
  922. config ARCH_VF610
  923. bool "Freescale Vybrid"
  924. select CPU_V7A
  925. select GPIO_EXTRA_HEADER
  926. select SYS_FSL_ERRATUM_ESDHC111
  927. imply CMD_MTDPARTS
  928. imply MTD_RAW_NAND
  929. config ARCH_ZYNQ
  930. bool "Xilinx Zynq based platform"
  931. select CLK
  932. select CLK_ZYNQ
  933. select CPU_V7A
  934. select DM
  935. select DM_ETH if NET
  936. select DM_MMC if MMC
  937. select DM_SERIAL
  938. select DM_SPI
  939. select DM_SPI_FLASH
  940. select GPIO_EXTRA_HEADER
  941. select OF_CONTROL
  942. select SPI
  943. select SPL_BOARD_INIT if SPL
  944. select SPL_CLK if SPL
  945. select SPL_DM if SPL
  946. select SPL_DM_SPI if SPL
  947. select SPL_DM_SPI_FLASH if SPL
  948. select SPL_OF_CONTROL if SPL
  949. select SPL_SEPARATE_BSS if SPL
  950. select SUPPORT_SPL
  951. imply ARCH_EARLY_INIT_R
  952. imply BOARD_LATE_INIT
  953. imply CMD_CLK
  954. imply CMD_DM
  955. imply CMD_SPL
  956. imply ENV_VARS_UBOOT_RUNTIME_CONFIG
  957. imply FAT_WRITE
  958. config ARCH_ZYNQMP_R5
  959. bool "Xilinx ZynqMP R5 based platform"
  960. select CLK
  961. select CPU_V7R
  962. select DM
  963. select DM_ETH if NET
  964. select DM_MMC if MMC
  965. select DM_SERIAL
  966. select GPIO_EXTRA_HEADER
  967. select OF_CONTROL
  968. imply CMD_DM
  969. imply DM_USB_GADGET
  970. config ARCH_ZYNQMP
  971. bool "Xilinx ZynqMP based platform"
  972. select ARM64
  973. select CLK
  974. select DM
  975. select DM_ETH if NET
  976. select DM_MAILBOX
  977. select DM_MMC if MMC
  978. select DM_SERIAL
  979. select DM_SPI if SPI
  980. select DM_SPI_FLASH if DM_SPI
  981. select FIRMWARE
  982. select GPIO_EXTRA_HEADER
  983. select OF_CONTROL
  984. select SPL_BOARD_INIT if SPL
  985. select SPL_CLK if SPL
  986. select SPL_DM if SPL
  987. select SPL_DM_SPI if SPI && SPL_DM
  988. select SPL_DM_SPI_FLASH if SPL_DM_SPI
  989. select SPL_DM_MAILBOX if SPL
  990. select SPL_FIRMWARE if SPL
  991. select SPL_SEPARATE_BSS if SPL
  992. select SUPPORT_SPL
  993. select ZYNQMP_IPI
  994. imply BOARD_LATE_INIT
  995. imply CMD_DM
  996. imply ENV_VARS_UBOOT_RUNTIME_CONFIG
  997. imply FAT_WRITE
  998. imply MP
  999. imply DM_USB_GADGET
  1000. config ARCH_TEGRA
  1001. bool "NVIDIA Tegra"
  1002. select GPIO_EXTRA_HEADER
  1003. imply DISTRO_DEFAULTS
  1004. imply FAT_WRITE
  1005. config TARGET_VEXPRESS64_AEMV8A
  1006. bool "Support vexpress_aemv8a"
  1007. select ARM64
  1008. select GPIO_EXTRA_HEADER
  1009. select PL01X_SERIAL
  1010. config TARGET_VEXPRESS64_BASE_FVP
  1011. bool "Support Versatile Express ARMv8a FVP BASE model"
  1012. select ARM64
  1013. select GPIO_EXTRA_HEADER
  1014. select PL01X_SERIAL
  1015. select SEMIHOSTING
  1016. config TARGET_VEXPRESS64_JUNO
  1017. bool "Support Versatile Express Juno Development Platform"
  1018. select ARM64
  1019. select GPIO_EXTRA_HEADER
  1020. select PL01X_SERIAL
  1021. select DM
  1022. select OF_CONTROL
  1023. select OF_BOARD
  1024. select CLK
  1025. select DM_SERIAL
  1026. select ARM_PSCI_FW
  1027. select PSCI_RESET
  1028. select DM_ETH
  1029. select BLK
  1030. select USB
  1031. config TARGET_TOTAL_COMPUTE
  1032. bool "Support Total Compute Platform"
  1033. select ARM64
  1034. select PL01X_SERIAL
  1035. select DM
  1036. select DM_SERIAL
  1037. select DM_MMC
  1038. select DM_GPIO
  1039. config TARGET_LS2080A_EMU
  1040. bool "Support ls2080a_emu"
  1041. select ARCH_LS2080A
  1042. select ARM64
  1043. select ARMV8_MULTIENTRY
  1044. select FSL_DDR_SYNC_REFRESH
  1045. select GPIO_EXTRA_HEADER
  1046. help
  1047. Support for Freescale LS2080A_EMU platform.
  1048. The LS2080A Development System (EMULATOR) is a pre-silicon
  1049. development platform that supports the QorIQ LS2080A
  1050. Layerscape Architecture processor.
  1051. config TARGET_LS1088AQDS
  1052. bool "Support ls1088aqds"
  1053. select ARCH_LS1088A
  1054. select ARM64
  1055. select ARMV8_MULTIENTRY
  1056. select ARCH_SUPPORT_TFABOOT
  1057. select BOARD_LATE_INIT
  1058. select GPIO_EXTRA_HEADER
  1059. select SUPPORT_SPL
  1060. select FSL_DDR_INTERACTIVE if !SD_BOOT
  1061. help
  1062. Support for NXP LS1088AQDS platform.
  1063. The LS1088A Development System (QDS) is a high-performance
  1064. development platform that supports the QorIQ LS1088A
  1065. Layerscape Architecture processor.
  1066. config TARGET_LS2080AQDS
  1067. bool "Support ls2080aqds"
  1068. select ARCH_LS2080A
  1069. select ARM64
  1070. select ARMV8_MULTIENTRY
  1071. select ARCH_SUPPORT_TFABOOT
  1072. select BOARD_LATE_INIT
  1073. select GPIO_EXTRA_HEADER
  1074. select SUPPORT_SPL
  1075. imply SCSI
  1076. imply SCSI_AHCI
  1077. select FSL_DDR_BIST
  1078. select FSL_DDR_INTERACTIVE if !SPL
  1079. help
  1080. Support for Freescale LS2080AQDS platform.
  1081. The LS2080A Development System (QDS) is a high-performance
  1082. development platform that supports the QorIQ LS2080A
  1083. Layerscape Architecture processor.
  1084. config TARGET_LS2080ARDB
  1085. bool "Support ls2080ardb"
  1086. select ARCH_LS2080A
  1087. select ARM64
  1088. select ARMV8_MULTIENTRY
  1089. select ARCH_SUPPORT_TFABOOT
  1090. select BOARD_LATE_INIT
  1091. select SUPPORT_SPL
  1092. select FSL_DDR_BIST
  1093. select FSL_DDR_INTERACTIVE if !SPL
  1094. select GPIO_EXTRA_HEADER
  1095. imply SCSI
  1096. imply SCSI_AHCI
  1097. help
  1098. Support for Freescale LS2080ARDB platform.
  1099. The LS2080A Reference design board (RDB) is a high-performance
  1100. development platform that supports the QorIQ LS2080A
  1101. Layerscape Architecture processor.
  1102. config TARGET_LS2081ARDB
  1103. bool "Support ls2081ardb"
  1104. select ARCH_LS2080A
  1105. select ARM64
  1106. select ARMV8_MULTIENTRY
  1107. select BOARD_LATE_INIT
  1108. select GPIO_EXTRA_HEADER
  1109. select SUPPORT_SPL
  1110. help
  1111. Support for Freescale LS2081ARDB platform.
  1112. The LS2081A Reference design board (RDB) is a high-performance
  1113. development platform that supports the QorIQ LS2081A/LS2041A
  1114. Layerscape Architecture processor.
  1115. config TARGET_LX2160ARDB
  1116. bool "Support lx2160ardb"
  1117. select ARCH_LX2160A
  1118. select ARM64
  1119. select ARMV8_MULTIENTRY
  1120. select ARCH_SUPPORT_TFABOOT
  1121. select BOARD_LATE_INIT
  1122. select GPIO_EXTRA_HEADER
  1123. help
  1124. Support for NXP LX2160ARDB platform.
  1125. The lx2160ardb (LX2160A Reference design board (RDB)
  1126. is a high-performance development platform that supports the
  1127. QorIQ LX2160A/LX2120A/LX2080A Layerscape Architecture processor.
  1128. config TARGET_LX2160AQDS
  1129. bool "Support lx2160aqds"
  1130. select ARCH_LX2160A
  1131. select ARM64
  1132. select ARMV8_MULTIENTRY
  1133. select ARCH_SUPPORT_TFABOOT
  1134. select BOARD_LATE_INIT
  1135. select GPIO_EXTRA_HEADER
  1136. help
  1137. Support for NXP LX2160AQDS platform.
  1138. The lx2160aqds (LX2160A QorIQ Development System (QDS)
  1139. is a high-performance development platform that supports the
  1140. QorIQ LX2160A/LX2120A/LX2080A Layerscape Architecture processor.
  1141. config TARGET_LX2162AQDS
  1142. bool "Support lx2162aqds"
  1143. select ARCH_LX2162A
  1144. select ARCH_MISC_INIT
  1145. select ARM64
  1146. select ARMV8_MULTIENTRY
  1147. select ARCH_SUPPORT_TFABOOT
  1148. select BOARD_LATE_INIT
  1149. select GPIO_EXTRA_HEADER
  1150. help
  1151. Support for NXP LX2162AQDS platform.
  1152. The lx2162aqds support is based on LX2160A Layerscape Architecture processor.
  1153. config TARGET_HIKEY
  1154. bool "Support HiKey 96boards Consumer Edition Platform"
  1155. select ARM64
  1156. select DM
  1157. select DM_GPIO
  1158. select DM_SERIAL
  1159. select GPIO_EXTRA_HEADER
  1160. select OF_CONTROL
  1161. select PL01X_SERIAL
  1162. select SPECIFY_CONSOLE_INDEX
  1163. imply CMD_DM
  1164. help
  1165. Support for HiKey 96boards platform. It features a HI6220
  1166. SoC, with 8xA53 CPU, mali450 gpu, and 1GB RAM.
  1167. config TARGET_HIKEY960
  1168. bool "Support HiKey960 96boards Consumer Edition Platform"
  1169. select ARM64
  1170. select DM
  1171. select DM_SERIAL
  1172. select GPIO_EXTRA_HEADER
  1173. select OF_CONTROL
  1174. select PL01X_SERIAL
  1175. imply CMD_DM
  1176. help
  1177. Support for HiKey960 96boards platform. It features a HI3660
  1178. SoC, with 4xA73 CPU, 4xA53 CPU, MALI-G71 GPU, and 3GB RAM.
  1179. config TARGET_POPLAR
  1180. bool "Support Poplar 96boards Enterprise Edition Platform"
  1181. select ARM64
  1182. select DM
  1183. select DM_SERIAL
  1184. select GPIO_EXTRA_HEADER
  1185. select OF_CONTROL
  1186. select PL01X_SERIAL
  1187. imply CMD_DM
  1188. help
  1189. Support for Poplar 96boards EE platform. It features a HI3798cv200
  1190. SoC, with 4xA53 CPU, 1GB RAM and the high performance Mali T720 GPU
  1191. making it capable of running any commercial set-top solution based on
  1192. Linux or Android.
  1193. config TARGET_LS1012AQDS
  1194. bool "Support ls1012aqds"
  1195. select ARCH_LS1012A
  1196. select ARM64
  1197. select ARCH_SUPPORT_TFABOOT
  1198. select BOARD_LATE_INIT
  1199. select GPIO_EXTRA_HEADER
  1200. help
  1201. Support for Freescale LS1012AQDS platform.
  1202. The LS1012A Development System (QDS) is a high-performance
  1203. development platform that supports the QorIQ LS1012A
  1204. Layerscape Architecture processor.
  1205. config TARGET_LS1012ARDB
  1206. bool "Support ls1012ardb"
  1207. select ARCH_LS1012A
  1208. select ARM64
  1209. select ARCH_SUPPORT_TFABOOT
  1210. select BOARD_LATE_INIT
  1211. select GPIO_EXTRA_HEADER
  1212. imply SCSI
  1213. imply SCSI_AHCI
  1214. help
  1215. Support for Freescale LS1012ARDB platform.
  1216. The LS1012A Reference design board (RDB) is a high-performance
  1217. development platform that supports the QorIQ LS1012A
  1218. Layerscape Architecture processor.
  1219. config TARGET_LS1012A2G5RDB
  1220. bool "Support ls1012a2g5rdb"
  1221. select ARCH_LS1012A
  1222. select ARM64
  1223. select ARCH_SUPPORT_TFABOOT
  1224. select BOARD_LATE_INIT
  1225. select GPIO_EXTRA_HEADER
  1226. imply SCSI
  1227. help
  1228. Support for Freescale LS1012A2G5RDB platform.
  1229. The LS1012A 2G5 Reference design board (RDB) is a high-performance
  1230. development platform that supports the QorIQ LS1012A
  1231. Layerscape Architecture processor.
  1232. config TARGET_LS1012AFRWY
  1233. bool "Support ls1012afrwy"
  1234. select ARCH_LS1012A
  1235. select ARM64
  1236. select ARCH_SUPPORT_TFABOOT
  1237. select BOARD_LATE_INIT
  1238. select GPIO_EXTRA_HEADER
  1239. imply SCSI
  1240. imply SCSI_AHCI
  1241. help
  1242. Support for Freescale LS1012AFRWY platform.
  1243. The LS1012A FRWY board (FRWY) is a high-performance
  1244. development platform that supports the QorIQ LS1012A
  1245. Layerscape Architecture processor.
  1246. config TARGET_LS1012AFRDM
  1247. bool "Support ls1012afrdm"
  1248. select ARCH_LS1012A
  1249. select ARM64
  1250. select ARCH_SUPPORT_TFABOOT
  1251. select GPIO_EXTRA_HEADER
  1252. help
  1253. Support for Freescale LS1012AFRDM platform.
  1254. The LS1012A Freedom board (FRDM) is a high-performance
  1255. development platform that supports the QorIQ LS1012A
  1256. Layerscape Architecture processor.
  1257. config TARGET_LS1028AQDS
  1258. bool "Support ls1028aqds"
  1259. select ARCH_LS1028A
  1260. select ARM64
  1261. select ARMV8_MULTIENTRY
  1262. select ARCH_SUPPORT_TFABOOT
  1263. select BOARD_LATE_INIT
  1264. select GPIO_EXTRA_HEADER
  1265. help
  1266. Support for Freescale LS1028AQDS platform
  1267. The LS1028A Development System (QDS) is a high-performance
  1268. development platform that supports the QorIQ LS1028A
  1269. Layerscape Architecture processor.
  1270. config TARGET_LS1028ARDB
  1271. bool "Support ls1028ardb"
  1272. select ARCH_LS1028A
  1273. select ARM64
  1274. select ARMV8_MULTIENTRY
  1275. select ARCH_SUPPORT_TFABOOT
  1276. select BOARD_LATE_INIT
  1277. select GPIO_EXTRA_HEADER
  1278. help
  1279. Support for Freescale LS1028ARDB platform
  1280. The LS1028A Development System (RDB) is a high-performance
  1281. development platform that supports the QorIQ LS1028A
  1282. Layerscape Architecture processor.
  1283. config TARGET_LS1088ARDB
  1284. bool "Support ls1088ardb"
  1285. select ARCH_LS1088A
  1286. select ARM64
  1287. select ARMV8_MULTIENTRY
  1288. select ARCH_SUPPORT_TFABOOT
  1289. select BOARD_LATE_INIT
  1290. select SUPPORT_SPL
  1291. select FSL_DDR_INTERACTIVE if !SD_BOOT
  1292. select GPIO_EXTRA_HEADER
  1293. help
  1294. Support for NXP LS1088ARDB platform.
  1295. The LS1088A Reference design board (RDB) is a high-performance
  1296. development platform that supports the QorIQ LS1088A
  1297. Layerscape Architecture processor.
  1298. config TARGET_LS1021AQDS
  1299. bool "Support ls1021aqds"
  1300. select ARCH_LS1021A
  1301. select ARCH_SUPPORT_PSCI
  1302. select BOARD_EARLY_INIT_F
  1303. select BOARD_LATE_INIT
  1304. select CPU_V7A
  1305. select CPU_V7_HAS_NONSEC
  1306. select CPU_V7_HAS_VIRT
  1307. select LS1_DEEP_SLEEP
  1308. select SUPPORT_SPL
  1309. select SYS_FSL_DDR
  1310. select FSL_DDR_INTERACTIVE
  1311. select DM_SPI_FLASH if FSL_DSPI || FSL_QSPI
  1312. select GPIO_EXTRA_HEADER
  1313. select SPI_FLASH_DATAFLASH if FSL_DSPI || FSL_QSPI
  1314. imply SCSI
  1315. config TARGET_LS1021ATWR
  1316. bool "Support ls1021atwr"
  1317. select ARCH_LS1021A
  1318. select ARCH_SUPPORT_PSCI
  1319. select BOARD_EARLY_INIT_F
  1320. select BOARD_LATE_INIT
  1321. select CPU_V7A
  1322. select CPU_V7_HAS_NONSEC
  1323. select CPU_V7_HAS_VIRT
  1324. select LS1_DEEP_SLEEP
  1325. select SUPPORT_SPL
  1326. select DM_SPI_FLASH if FSL_DSPI || FSL_QSPI
  1327. select GPIO_EXTRA_HEADER
  1328. imply SCSI
  1329. config TARGET_PG_WCOM_SELI8
  1330. bool "Support Hitachi-Powergrids SELI8 service unit card"
  1331. select ARCH_LS1021A
  1332. select ARCH_SUPPORT_PSCI
  1333. select BOARD_EARLY_INIT_F
  1334. select BOARD_LATE_INIT
  1335. select CPU_V7A
  1336. select CPU_V7_HAS_NONSEC
  1337. select CPU_V7_HAS_VIRT
  1338. select SYS_FSL_DDR
  1339. select FSL_DDR_INTERACTIVE
  1340. select GPIO_EXTRA_HEADER
  1341. select VENDOR_KM
  1342. imply SCSI
  1343. help
  1344. Support for Hitachi-Powergrids SELI8 service unit card.
  1345. SELI8 is a QorIQ LS1021a based service unit card used
  1346. in XMC20 and FOX615 product families.
  1347. config TARGET_PG_WCOM_EXPU1
  1348. bool "Support Hitachi-Powergrids EXPU1 service unit card"
  1349. select ARCH_LS1021A
  1350. select ARCH_SUPPORT_PSCI
  1351. select BOARD_EARLY_INIT_F
  1352. select BOARD_LATE_INIT
  1353. select CPU_V7A
  1354. select CPU_V7_HAS_NONSEC
  1355. select CPU_V7_HAS_VIRT
  1356. select SYS_FSL_DDR
  1357. select FSL_DDR_INTERACTIVE
  1358. select VENDOR_KM
  1359. imply SCSI
  1360. help
  1361. Support for Hitachi-Powergrids EXPU1 service unit card.
  1362. EXPU1 is a QorIQ LS1021a based service unit card used
  1363. in XMC20 and FOX615 product families.
  1364. config TARGET_LS1021ATSN
  1365. bool "Support ls1021atsn"
  1366. select ARCH_LS1021A
  1367. select ARCH_SUPPORT_PSCI
  1368. select BOARD_EARLY_INIT_F
  1369. select BOARD_LATE_INIT
  1370. select CPU_V7A
  1371. select CPU_V7_HAS_NONSEC
  1372. select CPU_V7_HAS_VIRT
  1373. select LS1_DEEP_SLEEP
  1374. select SUPPORT_SPL
  1375. select GPIO_EXTRA_HEADER
  1376. imply SCSI
  1377. config TARGET_LS1021AIOT
  1378. bool "Support ls1021aiot"
  1379. select ARCH_LS1021A
  1380. select ARCH_SUPPORT_PSCI
  1381. select BOARD_LATE_INIT
  1382. select CPU_V7A
  1383. select CPU_V7_HAS_NONSEC
  1384. select CPU_V7_HAS_VIRT
  1385. select SUPPORT_SPL
  1386. select DM_SPI_FLASH if FSL_DSPI || FSL_QSPI
  1387. select GPIO_EXTRA_HEADER
  1388. imply SCSI
  1389. help
  1390. Support for Freescale LS1021AIOT platform.
  1391. The LS1021A Freescale board (IOT) is a high-performance
  1392. development platform that supports the QorIQ LS1021A
  1393. Layerscape Architecture processor.
  1394. config TARGET_LS1043AQDS
  1395. bool "Support ls1043aqds"
  1396. select ARCH_LS1043A
  1397. select ARM64
  1398. select ARMV8_MULTIENTRY
  1399. select ARCH_SUPPORT_TFABOOT
  1400. select BOARD_EARLY_INIT_F
  1401. select BOARD_LATE_INIT
  1402. select SUPPORT_SPL
  1403. select FSL_DDR_INTERACTIVE if !SPL
  1404. select FSL_DSPI if !SPL_NO_DSPI
  1405. select DM_SPI_FLASH if FSL_DSPI
  1406. select GPIO_EXTRA_HEADER
  1407. imply SCSI
  1408. imply SCSI_AHCI
  1409. help
  1410. Support for Freescale LS1043AQDS platform.
  1411. config TARGET_LS1043ARDB
  1412. bool "Support ls1043ardb"
  1413. select ARCH_LS1043A
  1414. select ARM64
  1415. select ARMV8_MULTIENTRY
  1416. select ARCH_SUPPORT_TFABOOT
  1417. select BOARD_EARLY_INIT_F
  1418. select BOARD_LATE_INIT
  1419. select SUPPORT_SPL
  1420. select FSL_DSPI if !SPL_NO_DSPI
  1421. select DM_SPI_FLASH if FSL_DSPI
  1422. select GPIO_EXTRA_HEADER
  1423. help
  1424. Support for Freescale LS1043ARDB platform.
  1425. config TARGET_LS1046AQDS
  1426. bool "Support ls1046aqds"
  1427. select ARCH_LS1046A
  1428. select ARM64
  1429. select ARMV8_MULTIENTRY
  1430. select ARCH_SUPPORT_TFABOOT
  1431. select BOARD_EARLY_INIT_F
  1432. select BOARD_LATE_INIT
  1433. select DM_SPI_FLASH if DM_SPI
  1434. select SUPPORT_SPL
  1435. select FSL_DDR_BIST if !SPL
  1436. select FSL_DDR_INTERACTIVE if !SPL
  1437. select FSL_DDR_INTERACTIVE if !SPL
  1438. select GPIO_EXTRA_HEADER
  1439. imply SCSI
  1440. help
  1441. Support for Freescale LS1046AQDS platform.
  1442. The LS1046A Development System (QDS) is a high-performance
  1443. development platform that supports the QorIQ LS1046A
  1444. Layerscape Architecture processor.
  1445. config TARGET_LS1046ARDB
  1446. bool "Support ls1046ardb"
  1447. select ARCH_LS1046A
  1448. select ARM64
  1449. select ARMV8_MULTIENTRY
  1450. select ARCH_SUPPORT_TFABOOT
  1451. select BOARD_EARLY_INIT_F
  1452. select BOARD_LATE_INIT
  1453. select DM_SPI_FLASH if DM_SPI
  1454. select POWER_MC34VR500
  1455. select SUPPORT_SPL
  1456. select FSL_DDR_BIST
  1457. select FSL_DDR_INTERACTIVE if !SPL
  1458. select GPIO_EXTRA_HEADER
  1459. imply SCSI
  1460. help
  1461. Support for Freescale LS1046ARDB platform.
  1462. The LS1046A Reference Design Board (RDB) is a high-performance
  1463. development platform that supports the QorIQ LS1046A
  1464. Layerscape Architecture processor.
  1465. config TARGET_LS1046AFRWY
  1466. bool "Support ls1046afrwy"
  1467. select ARCH_LS1046A
  1468. select ARM64
  1469. select ARMV8_MULTIENTRY
  1470. select ARCH_SUPPORT_TFABOOT
  1471. select BOARD_EARLY_INIT_F
  1472. select BOARD_LATE_INIT
  1473. select DM_SPI_FLASH if DM_SPI
  1474. select GPIO_EXTRA_HEADER
  1475. imply SCSI
  1476. help
  1477. Support for Freescale LS1046AFRWY platform.
  1478. The LS1046A Freeway Board (FRWY) is a high-performance
  1479. development platform that supports the QorIQ LS1046A
  1480. Layerscape Architecture processor.
  1481. config TARGET_SL28
  1482. bool "Support sl28"
  1483. select ARCH_LS1028A
  1484. select ARM64
  1485. select ARMV8_MULTIENTRY
  1486. select SUPPORT_SPL
  1487. select BINMAN
  1488. select DM
  1489. select DM_GPIO
  1490. select DM_I2C
  1491. select DM_MMC
  1492. select DM_SPI_FLASH
  1493. select DM_ETH
  1494. select DM_MDIO
  1495. select DM_PCI
  1496. select DM_RNG
  1497. select DM_RTC
  1498. select DM_SCSI
  1499. select DM_SERIAL
  1500. select DM_SPI
  1501. select GPIO_EXTRA_HEADER
  1502. select SPL_DM if SPL
  1503. select SPL_DM_SPI if SPL
  1504. select SPL_DM_SPI_FLASH if SPL
  1505. select SPL_DM_I2C if SPL
  1506. select SPL_DM_MMC if SPL
  1507. select SPL_DM_SERIAL if SPL
  1508. help
  1509. Support for Kontron SMARC-sAL28 board.
  1510. config TARGET_COLIBRI_PXA270
  1511. bool "Support colibri_pxa270"
  1512. select CPU_PXA
  1513. select GPIO_EXTRA_HEADER
  1514. config ARCH_UNIPHIER
  1515. bool "Socionext UniPhier SoCs"
  1516. select BOARD_LATE_INIT
  1517. select DM
  1518. select DM_ETH
  1519. select DM_GPIO
  1520. select DM_I2C
  1521. select DM_MMC
  1522. select DM_MTD
  1523. select DM_RESET
  1524. select DM_SERIAL
  1525. select OF_BOARD_SETUP
  1526. select OF_CONTROL
  1527. select OF_LIBFDT
  1528. select PINCTRL
  1529. select SPL_BOARD_INIT if SPL
  1530. select SPL_DM if SPL
  1531. select SPL_LIBCOMMON_SUPPORT if SPL
  1532. select SPL_LIBGENERIC_SUPPORT if SPL
  1533. select SPL_OF_CONTROL if SPL
  1534. select SPL_PINCTRL if SPL
  1535. select SUPPORT_SPL
  1536. imply CMD_DM
  1537. imply DISTRO_DEFAULTS
  1538. imply FAT_WRITE
  1539. help
  1540. Support for UniPhier SoC family developed by Socionext Inc.
  1541. (formerly, System LSI Business Division of Panasonic Corporation)
  1542. config ARCH_SYNQUACER
  1543. bool "Socionext SynQuacer SoCs"
  1544. select ARM64
  1545. select DM
  1546. select GIC_V3
  1547. select PSCI_RESET
  1548. select SYSRESET
  1549. select SYSRESET_PSCI
  1550. select OF_CONTROL
  1551. help
  1552. Support for SynQuacer SoC family developed by Socionext Inc.
  1553. This SoC is used on 96boards EE DeveloperBox.
  1554. config ARCH_STM32
  1555. bool "Support STMicroelectronics STM32 MCU with cortex M"
  1556. select CPU_V7M
  1557. select DM
  1558. select DM_SERIAL
  1559. select GPIO_EXTRA_HEADER
  1560. imply CMD_DM
  1561. config ARCH_STI
  1562. bool "Support STMicrolectronics SoCs"
  1563. select BLK
  1564. select CPU_V7A
  1565. select DM
  1566. select DM_MMC
  1567. select DM_RESET
  1568. select DM_SERIAL
  1569. imply CMD_DM
  1570. help
  1571. Support for STMicroelectronics STiH407/10 SoC family.
  1572. This SoC is used on Linaro 96Board STiH410-B2260
  1573. config ARCH_STM32MP
  1574. bool "Support STMicroelectronics STM32MP Socs with cortex A"
  1575. select ARCH_MISC_INIT
  1576. select ARCH_SUPPORT_TFABOOT
  1577. select BOARD_LATE_INIT
  1578. select CLK
  1579. select DM
  1580. select DM_GPIO
  1581. select DM_RESET
  1582. select DM_SERIAL
  1583. select GPIO_EXTRA_HEADER
  1584. select MISC
  1585. select OF_CONTROL
  1586. select OF_LIBFDT
  1587. select OF_SYSTEM_SETUP
  1588. select PINCTRL
  1589. select REGMAP
  1590. select SUPPORT_SPL
  1591. select SYSCON
  1592. select SYSRESET
  1593. select SYS_THUMB_BUILD
  1594. imply SPL_SYSRESET
  1595. imply CMD_DM
  1596. imply CMD_POWEROFF
  1597. imply OF_LIBFDT_OVERLAY
  1598. imply ENV_VARS_UBOOT_RUNTIME_CONFIG
  1599. imply USE_PREBOOT
  1600. help
  1601. Support for STM32MP SoC family developed by STMicroelectronics,
  1602. MPUs based on ARM cortex A core
  1603. U-BOOT is running in DDR, loaded by the First Stage BootLoader (FSBL).
  1604. FSBL can be TF-A: Trusted Firmware for Cortex A, for trusted boot
  1605. chain.
  1606. SPL is the unsecure FSBL for the basic boot chain.
  1607. config ARCH_ROCKCHIP
  1608. bool "Support Rockchip SoCs"
  1609. select BLK
  1610. select BINMAN if SPL_OPTEE
  1611. select DM
  1612. select DM_GPIO
  1613. select DM_I2C
  1614. select DM_MMC
  1615. select DM_PWM
  1616. select DM_REGULATOR
  1617. select DM_SERIAL
  1618. select DM_SPI
  1619. select DM_SPI_FLASH
  1620. select ENABLE_ARM_SOC_BOOT0_HOOK
  1621. select OF_CONTROL
  1622. select SPI
  1623. select SPL_DM if SPL
  1624. select SPL_DM_SPI if SPL
  1625. select SPL_DM_SPI_FLASH if SPL
  1626. select SYS_MALLOC_F
  1627. select SYS_THUMB_BUILD if !ARM64
  1628. imply ADC
  1629. imply CMD_DM
  1630. imply DEBUG_UART_BOARD_INIT
  1631. imply DISTRO_DEFAULTS
  1632. imply FAT_WRITE
  1633. imply SARADC_ROCKCHIP
  1634. imply SPL_SYSRESET
  1635. imply SPL_SYS_MALLOC_SIMPLE
  1636. imply SYS_NS16550
  1637. imply TPL_SYSRESET
  1638. imply USB_FUNCTION_FASTBOOT
  1639. config ARCH_OCTEONTX
  1640. bool "Support OcteonTX SoCs"
  1641. select CLK
  1642. select DM
  1643. select GPIO_EXTRA_HEADER
  1644. select ARM64
  1645. select OF_CONTROL
  1646. select OF_LIVE
  1647. select BOARD_LATE_INIT
  1648. select SYS_CACHE_SHIFT_7
  1649. config ARCH_OCTEONTX2
  1650. bool "Support OcteonTX2 SoCs"
  1651. select CLK
  1652. select DM
  1653. select GPIO_EXTRA_HEADER
  1654. select ARM64
  1655. select OF_CONTROL
  1656. select OF_LIVE
  1657. select BOARD_LATE_INIT
  1658. select SYS_CACHE_SHIFT_7
  1659. config TARGET_THUNDERX_88XX
  1660. bool "Support ThunderX 88xx"
  1661. select ARM64
  1662. select GPIO_EXTRA_HEADER
  1663. select OF_CONTROL
  1664. select PL01X_SERIAL
  1665. select SYS_CACHE_SHIFT_7
  1666. config ARCH_ASPEED
  1667. bool "Support Aspeed SoCs"
  1668. select DM
  1669. select OF_CONTROL
  1670. imply CMD_DM
  1671. config TARGET_DURIAN
  1672. bool "Support Phytium Durian Platform"
  1673. select ARM64
  1674. select GPIO_EXTRA_HEADER
  1675. help
  1676. Support for durian platform.
  1677. It has 2GB Sdram, uart and pcie.
  1678. config TARGET_PRESIDIO_ASIC
  1679. bool "Support Cortina Presidio ASIC Platform"
  1680. select ARM64
  1681. config TARGET_XENGUEST_ARM64
  1682. bool "Xen guest ARM64"
  1683. select ARM64
  1684. select XEN
  1685. select OF_CONTROL
  1686. select LINUX_KERNEL_IMAGE_HEADER
  1687. select XEN_SERIAL
  1688. select SSCANF
  1689. endchoice
  1690. config ARCH_SUPPORT_TFABOOT
  1691. bool
  1692. config TFABOOT
  1693. bool "Support for booting from TF-A"
  1694. depends on ARCH_SUPPORT_TFABOOT
  1695. default n
  1696. help
  1697. Some platforms support the setup of secure registers (for instance
  1698. for CPU errata handling) or provide secure services like PSCI.
  1699. Those services could also be provided by other firmware parts
  1700. like TF-A (Trusted Firmware for Cortex-A), in which case U-Boot
  1701. does not need to (and cannot) execute this code.
  1702. Enabling this option will make a U-Boot binary that is relying
  1703. on other firmware layers to provide secure functionality.
  1704. config TI_SECURE_DEVICE
  1705. bool "HS Device Type Support"
  1706. depends on ARCH_KEYSTONE || ARCH_OMAP2PLUS || ARCH_K3
  1707. help
  1708. If a high secure (HS) device type is being used, this config
  1709. must be set. This option impacts various aspects of the
  1710. build system (to create signed boot images that can be
  1711. authenticated) and the code. See the doc/README.ti-secure
  1712. file for further details.
  1713. if AM43XX || AM33XX || OMAP54XX || ARCH_KEYSTONE
  1714. config ISW_ENTRY_ADDR
  1715. hex "Address in memory or XIP address of bootloader entry point"
  1716. default 0x402F4000 if AM43XX
  1717. default 0x402F0400 if AM33XX
  1718. default 0x40301350 if OMAP54XX
  1719. help
  1720. After any reset, the boot ROM searches the boot media for a valid
  1721. boot image. For non-XIP devices, the ROM then copies the image into
  1722. internal memory. For all boot modes, after the ROM processes the
  1723. boot image it eventually computes the entry point address depending
  1724. on the device type (secure/non-secure), boot media (xip/non-xip) and
  1725. image headers.
  1726. endif
  1727. source "arch/arm/mach-aspeed/Kconfig"
  1728. source "arch/arm/mach-at91/Kconfig"
  1729. source "arch/arm/mach-bcm283x/Kconfig"
  1730. source "arch/arm/mach-bcmstb/Kconfig"
  1731. source "arch/arm/mach-davinci/Kconfig"
  1732. source "arch/arm/mach-exynos/Kconfig"
  1733. source "arch/arm/mach-highbank/Kconfig"
  1734. source "arch/arm/mach-integrator/Kconfig"
  1735. source "arch/arm/mach-ipq40xx/Kconfig"
  1736. source "arch/arm/mach-k3/Kconfig"
  1737. source "arch/arm/mach-keystone/Kconfig"
  1738. source "arch/arm/mach-kirkwood/Kconfig"
  1739. source "arch/arm/mach-lpc32xx/Kconfig"
  1740. source "arch/arm/mach-mvebu/Kconfig"
  1741. source "arch/arm/mach-octeontx/Kconfig"
  1742. source "arch/arm/mach-octeontx2/Kconfig"
  1743. source "arch/arm/cpu/armv7/ls102xa/Kconfig"
  1744. source "arch/arm/mach-imx/mx2/Kconfig"
  1745. source "arch/arm/mach-imx/mx3/Kconfig"
  1746. source "arch/arm/mach-imx/mx5/Kconfig"
  1747. source "arch/arm/mach-imx/mx6/Kconfig"
  1748. source "arch/arm/mach-imx/mx7/Kconfig"
  1749. source "arch/arm/mach-imx/mx7ulp/Kconfig"
  1750. source "arch/arm/mach-imx/imx8/Kconfig"
  1751. source "arch/arm/mach-imx/imx8m/Kconfig"
  1752. source "arch/arm/mach-imx/imxrt/Kconfig"
  1753. source "arch/arm/mach-imx/mxs/Kconfig"
  1754. source "arch/arm/mach-omap2/Kconfig"
  1755. source "arch/arm/cpu/armv8/fsl-layerscape/Kconfig"
  1756. source "arch/arm/mach-orion5x/Kconfig"
  1757. source "arch/arm/mach-owl/Kconfig"
  1758. source "arch/arm/mach-rmobile/Kconfig"
  1759. source "arch/arm/mach-meson/Kconfig"
  1760. source "arch/arm/mach-mediatek/Kconfig"
  1761. source "arch/arm/mach-qemu/Kconfig"
  1762. source "arch/arm/mach-rockchip/Kconfig"
  1763. source "arch/arm/mach-s5pc1xx/Kconfig"
  1764. source "arch/arm/mach-snapdragon/Kconfig"
  1765. source "arch/arm/mach-socfpga/Kconfig"
  1766. source "arch/arm/mach-sti/Kconfig"
  1767. source "arch/arm/mach-stm32/Kconfig"
  1768. source "arch/arm/mach-stm32mp/Kconfig"
  1769. source "arch/arm/mach-sunxi/Kconfig"
  1770. source "arch/arm/mach-tegra/Kconfig"
  1771. source "arch/arm/mach-u8500/Kconfig"
  1772. source "arch/arm/mach-uniphier/Kconfig"
  1773. source "arch/arm/cpu/armv7/vf610/Kconfig"
  1774. source "arch/arm/mach-zynq/Kconfig"
  1775. source "arch/arm/mach-zynqmp/Kconfig"
  1776. source "arch/arm/mach-versal/Kconfig"
  1777. source "arch/arm/mach-zynqmp-r5/Kconfig"
  1778. source "arch/arm/cpu/armv7/Kconfig"
  1779. source "arch/arm/cpu/armv8/Kconfig"
  1780. source "arch/arm/mach-imx/Kconfig"
  1781. source "arch/arm/mach-nexell/Kconfig"
  1782. source "board/armltd/total_compute/Kconfig"
  1783. source "board/bosch/shc/Kconfig"
  1784. source "board/bosch/guardian/Kconfig"
  1785. source "board/CarMediaLab/flea3/Kconfig"
  1786. source "board/Marvell/aspenite/Kconfig"
  1787. source "board/Marvell/octeontx/Kconfig"
  1788. source "board/Marvell/octeontx2/Kconfig"
  1789. source "board/armltd/vexpress64/Kconfig"
  1790. source "board/cortina/presidio-asic/Kconfig"
  1791. source "board/broadcom/bcm963158/Kconfig"
  1792. source "board/broadcom/bcm968360bg/Kconfig"
  1793. source "board/broadcom/bcm968580xref/Kconfig"
  1794. source "board/broadcom/bcmns3/Kconfig"
  1795. source "board/cavium/thunderx/Kconfig"
  1796. source "board/eets/pdu001/Kconfig"
  1797. source "board/emulation/qemu-arm/Kconfig"
  1798. source "board/freescale/ls2080aqds/Kconfig"
  1799. source "board/freescale/ls2080ardb/Kconfig"
  1800. source "board/freescale/ls1088a/Kconfig"
  1801. source "board/freescale/ls1028a/Kconfig"
  1802. source "board/freescale/ls1021aqds/Kconfig"
  1803. source "board/freescale/ls1043aqds/Kconfig"
  1804. source "board/freescale/ls1021atwr/Kconfig"
  1805. source "board/freescale/ls1021atsn/Kconfig"
  1806. source "board/freescale/ls1021aiot/Kconfig"
  1807. source "board/freescale/ls1046aqds/Kconfig"
  1808. source "board/freescale/ls1043ardb/Kconfig"
  1809. source "board/freescale/ls1046ardb/Kconfig"
  1810. source "board/freescale/ls1046afrwy/Kconfig"
  1811. source "board/freescale/ls1012aqds/Kconfig"
  1812. source "board/freescale/ls1012ardb/Kconfig"
  1813. source "board/freescale/ls1012afrdm/Kconfig"
  1814. source "board/freescale/lx2160a/Kconfig"
  1815. source "board/grinn/chiliboard/Kconfig"
  1816. source "board/hisilicon/hikey/Kconfig"
  1817. source "board/hisilicon/hikey960/Kconfig"
  1818. source "board/hisilicon/poplar/Kconfig"
  1819. source "board/isee/igep003x/Kconfig"
  1820. source "board/kontron/sl28/Kconfig"
  1821. source "board/myir/mys_6ulx/Kconfig"
  1822. source "board/seeed/npi_imx6ull/Kconfig"
  1823. source "board/socionext/developerbox/Kconfig"
  1824. source "board/st/stv0991/Kconfig"
  1825. source "board/tcl/sl50/Kconfig"
  1826. source "board/toradex/colibri_pxa270/Kconfig"
  1827. source "board/variscite/dart_6ul/Kconfig"
  1828. source "board/vscom/baltos/Kconfig"
  1829. source "board/phytium/durian/Kconfig"
  1830. source "board/xen/xenguest_arm64/Kconfig"
  1831. source "board/keymile/Kconfig"
  1832. source "arch/arm/Kconfig.debug"
  1833. endmenu
  1834. config SPL_LDSCRIPT
  1835. default "arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds" if (ARCH_MX23 || ARCH_MX28) && !SPL_FRAMEWORK
  1836. default "arch/arm/cpu/arm1136/u-boot-spl.lds" if CPU_ARM1136
  1837. default "arch/arm/cpu/armv8/u-boot-spl.lds" if ARM64