uboot/arch/arm/Kconfig
<<
>>
Prefs
   1menu "ARM architecture"
   2        depends on ARM
   3
   4config SYS_ARCH
   5        default "arm"
   6
   7config ARM64
   8        bool
   9        select PHYS_64BIT
  10        select SYS_CACHE_SHIFT_6
  11
  12config DMA_ADDR_T_64BIT
  13        bool
  14        default y if ARM64
  15
  16config HAS_VBAR
  17        bool
  18
  19config HAS_THUMB2
  20        bool
  21
  22# Used for compatibility with asm files copied from the kernel
  23config ARM_ASM_UNIFIED
  24        bool
  25        default y
  26
  27# Used for compatibility with asm files copied from the kernel
  28config THUMB2_KERNEL
  29        bool
  30
  31# If set, the workarounds for these ARM errata are applied early during U-Boot
  32# startup. Note that in general these options force the workarounds to be
  33# applied; no CPU-type/version detection exists, unlike the similar options in
  34# the Linux kernel. Do not set these options unless they apply!  Also note that
  35# the following can be machine specific errata. These do have ability to
  36# provide rudimentary version and machine specific checks, but expect no
  37# product checks:
  38# CONFIG_ARM_ERRATA_430973
  39# CONFIG_ARM_ERRATA_454179
  40# CONFIG_ARM_ERRATA_621766
  41# CONFIG_ARM_ERRATA_798870
  42# CONFIG_ARM_ERRATA_801819
  43config ARM_ERRATA_430973
  44        bool
  45
  46config ARM_ERRATA_454179
  47        bool
  48
  49config ARM_ERRATA_621766
  50        bool
  51
  52config ARM_ERRATA_716044
  53        bool
  54
  55config ARM_ERRATA_725233
  56        bool
  57
  58config ARM_ERRATA_742230
  59        bool
  60
  61config ARM_ERRATA_743622
  62        bool
  63
  64config ARM_ERRATA_751472
  65        bool
  66
  67config ARM_ERRATA_761320
  68        bool
  69
  70config ARM_ERRATA_773022
  71        bool
  72
  73config ARM_ERRATA_774769
  74        bool
  75
  76config ARM_ERRATA_794072
  77        bool
  78
  79config ARM_ERRATA_798870
  80        bool
  81
  82config ARM_ERRATA_801819
  83        bool
  84
  85config ARM_ERRATA_826974
  86        bool
  87
  88config ARM_ERRATA_828024
  89        bool
  90
  91config ARM_ERRATA_829520
  92        bool
  93
  94config ARM_ERRATA_833069
  95        bool
  96
  97config ARM_ERRATA_833471
  98        bool
  99
 100config ARM_ERRATA_852421
 101        bool
 102
 103config ARM_ERRATA_852423
 104        bool
 105
 106config CPU_ARM720T
 107        bool
 108        select SYS_CACHE_SHIFT_5
 109
 110config CPU_ARM920T
 111        bool
 112        select SYS_CACHE_SHIFT_5
 113
 114config CPU_ARM926EJS
 115        bool
 116        select SYS_CACHE_SHIFT_5
 117
 118config CPU_ARM946ES
 119        bool
 120        select SYS_CACHE_SHIFT_5
 121
 122config CPU_ARM1136
 123        bool
 124        select SYS_CACHE_SHIFT_5
 125
 126config CPU_ARM1176
 127        bool
 128        select HAS_VBAR
 129        select SYS_CACHE_SHIFT_5
 130
 131config CPU_V7
 132        bool
 133        select HAS_VBAR
 134        select HAS_THUMB2
 135        select SYS_CACHE_SHIFT_6
 136
 137config CPU_V7M
 138        bool
 139        select HAS_THUMB2
 140        select THUMB2_KERNEL
 141        select SYS_CACHE_SHIFT_5
 142
 143config CPU_PXA
 144        bool
 145        select SYS_CACHE_SHIFT_5
 146
 147config CPU_SA1100
 148        bool
 149        select SYS_CACHE_SHIFT_5
 150
 151config SYS_CPU
 152        default "arm720t" if CPU_ARM720T
 153        default "arm920t" if CPU_ARM920T
 154        default "arm926ejs" if CPU_ARM926EJS
 155        default "arm946es" if CPU_ARM946ES
 156        default "arm1136" if CPU_ARM1136
 157        default "arm1176" if CPU_ARM1176
 158        default "armv7" if CPU_V7
 159        default "armv7m" if CPU_V7M
 160        default "pxa" if CPU_PXA
 161        default "sa1100" if CPU_SA1100
 162        default "armv8" if ARM64
 163
 164config SYS_ARM_ARCH
 165        int
 166        default 4 if CPU_ARM720T
 167        default 4 if CPU_ARM920T
 168        default 5 if CPU_ARM926EJS
 169        default 5 if CPU_ARM946ES
 170        default 6 if CPU_ARM1136
 171        default 6 if CPU_ARM1176
 172        default 7 if CPU_V7
 173        default 7 if CPU_V7M
 174        default 5 if CPU_PXA
 175        default 4 if CPU_SA1100
 176        default 8 if ARM64
 177
 178config SYS_CACHE_SHIFT_5
 179        bool
 180
 181config SYS_CACHE_SHIFT_6
 182        bool
 183
 184config SYS_CACHE_SHIFT_7
 185        bool
 186
 187config SYS_CACHELINE_SIZE
 188        int
 189        default 128 if SYS_CACHE_SHIFT_7
 190        default 64 if SYS_CACHE_SHIFT_6
 191        default 32 if SYS_CACHE_SHIFT_5
 192
 193config ARM_SMCCC
 194        bool "Support for ARM SMC Calling Convention (SMCCC)"
 195        depends on CPU_V7 || ARM64
 196        select ARM_PSCI_FW
 197        help
 198          Say Y here if you want to enable ARM SMC Calling Convention.
 199          This should be enabled if U-Boot needs to communicate with system
 200          firmware (for example, PSCI) according to SMCCC.
 201
 202config SEMIHOSTING
 203        bool "support boot from semihosting"
 204        help
 205          In emulated environments, semihosting is a way for
 206          the hosted environment to call out to the emulator to
 207          retrieve files from the host machine.
 208
 209config SYS_THUMB_BUILD
 210        bool "Build U-Boot using the Thumb instruction set"
 211        depends on !ARM64
 212        help
 213           Use this flag to build U-Boot using the Thumb instruction set for
 214           ARM architectures. Thumb instruction set provides better code
 215           density. For ARM architectures that support Thumb2 this flag will
 216           result in Thumb2 code generated by GCC.
 217
 218config SPL_SYS_THUMB_BUILD
 219        bool "Build SPL using the Thumb instruction set"
 220        default y if SYS_THUMB_BUILD
 221        depends on !ARM64
 222        help
 223           Use this flag to build SPL using the Thumb instruction set for
 224           ARM architectures. Thumb instruction set provides better code
 225           density. For ARM architectures that support Thumb2 this flag will
 226           result in Thumb2 code generated by GCC.
 227
 228config SYS_L2CACHE_OFF
 229        bool "L2cache off"
 230        help
 231          If SoC does not support L2CACHE or one do not want to enable
 232          L2CACHE, choose this option.
 233
 234config ENABLE_ARM_SOC_BOOT0_HOOK
 235        bool "prepare BOOT0 header"
 236        help
 237          If the SoC's BOOT0 requires a header area filled with (magic)
 238          values, then choose this option, and create a define called
 239          ARM_SOC_BOOT0_HOOK which contains the required assembler
 240          preprocessor code.
 241
 242config ARM_CORTEX_CPU_IS_UP
 243        bool
 244        default n
 245
 246config USE_ARCH_MEMCPY
 247        bool "Use an assembly optimized implementation of memcpy"
 248        default y
 249        depends on !ARM64
 250        help
 251          Enable the generation of an optimized version of memcpy.
 252          Such implementation may be faster under some conditions
 253          but may increase the binary size.
 254
 255config SPL_USE_ARCH_MEMCPY
 256        bool "Use an assembly optimized implementation of memcpy for SPL"
 257        default y if USE_ARCH_MEMCPY
 258        depends on !ARM64
 259        help
 260          Enable the generation of an optimized version of memcpy.
 261          Such implementation may be faster under some conditions
 262          but may increase the binary size.
 263
 264config USE_ARCH_MEMSET
 265        bool "Use an assembly optimized implementation of memset"
 266        default y
 267        depends on !ARM64
 268        help
 269          Enable the generation of an optimized version of memset.
 270          Such implementation may be faster under some conditions
 271          but may increase the binary size.
 272
 273config SPL_USE_ARCH_MEMSET
 274        bool "Use an assembly optimized implementation of memset for SPL"
 275        default y if USE_ARCH_MEMSET
 276        depends on !ARM64
 277        help
 278          Enable the generation of an optimized version of memset.
 279          Such implementation may be faster under some conditions
 280          but may increase the binary size.
 281
 282config ARM64_SUPPORT_AARCH32
 283        bool "ARM64 system support AArch32 execution state"
 284        default y if ARM64 && !TARGET_THUNDERX_88XX
 285        help
 286          This ARM64 system supports AArch32 execution state.
 287
 288choice
 289        prompt "Target select"
 290        default TARGET_HIKEY
 291
 292config ARCH_AT91
 293        bool "Atmel AT91"
 294        select SPL_BOARD_INIT if SPL
 295
 296config TARGET_EDB93XX
 297        bool "Support edb93xx"
 298        select CPU_ARM920T
 299
 300config TARGET_ASPENITE
 301        bool "Support aspenite"
 302        select CPU_ARM926EJS
 303
 304config TARGET_GPLUGD
 305        bool "Support gplugd"
 306        select CPU_ARM926EJS
 307
 308config ARCH_DAVINCI
 309        bool "TI DaVinci"
 310        select CPU_ARM926EJS
 311        help
 312          Support for TI's DaVinci platform.
 313
 314config KIRKWOOD
 315        bool "Marvell Kirkwood"
 316        select CPU_ARM926EJS
 317        select BOARD_EARLY_INIT_F
 318        select ARCH_MISC_INIT
 319
 320config ARCH_MVEBU
 321        bool "Marvell MVEBU family (Armada XP/375/38x/3700/7K/8K)"
 322        select OF_CONTROL
 323        select OF_SEPARATE
 324        select DM
 325        select DM_ETH
 326        select DM_SERIAL
 327        select DM_SPI
 328        select DM_SPI_FLASH
 329
 330config TARGET_DEVKIT3250
 331        bool "Support devkit3250"
 332        select CPU_ARM926EJS
 333        select SUPPORT_SPL
 334
 335config TARGET_WORK_92105
 336        bool "Support work_92105"
 337        select CPU_ARM926EJS
 338        select SUPPORT_SPL
 339
 340config TARGET_MX25PDK
 341        bool "Support mx25pdk"
 342        select BOARD_LATE_INIT
 343        select CPU_ARM926EJS
 344        select BOARD_EARLY_INIT_F
 345
 346config TARGET_ZMX25
 347        bool "Support zmx25"
 348        select BOARD_LATE_INIT
 349        select CPU_ARM926EJS
 350
 351config TARGET_APF27
 352        bool "Support apf27"
 353        select CPU_ARM926EJS
 354        select SUPPORT_SPL
 355
 356config TARGET_APX4DEVKIT
 357        bool "Support apx4devkit"
 358        select CPU_ARM926EJS
 359        select SUPPORT_SPL
 360
 361config TARGET_XFI3
 362        bool "Support xfi3"
 363        select CPU_ARM926EJS
 364        select SUPPORT_SPL
 365
 366config TARGET_M28EVK
 367        bool "Support m28evk"
 368        select CPU_ARM926EJS
 369        select SUPPORT_SPL
 370
 371config TARGET_MX23EVK
 372        bool "Support mx23evk"
 373        select CPU_ARM926EJS
 374        select SUPPORT_SPL
 375        select BOARD_EARLY_INIT_F
 376
 377config TARGET_MX28EVK
 378        bool "Support mx28evk"
 379        select CPU_ARM926EJS
 380        select SUPPORT_SPL
 381        select BOARD_EARLY_INIT_F
 382
 383config TARGET_MX23_OLINUXINO
 384        bool "Support mx23_olinuxino"
 385        select CPU_ARM926EJS
 386        select SUPPORT_SPL
 387        select BOARD_EARLY_INIT_F
 388
 389config TARGET_BG0900
 390        bool "Support bg0900"
 391        select CPU_ARM926EJS
 392        select SUPPORT_SPL
 393
 394config TARGET_SANSA_FUZE_PLUS
 395        bool "Support sansa_fuze_plus"
 396        select CPU_ARM926EJS
 397        select SUPPORT_SPL
 398
 399config TARGET_SC_SPS_1
 400        bool "Support sc_sps_1"
 401        select CPU_ARM926EJS
 402        select SUPPORT_SPL
 403
 404config ORION5X
 405        bool "Marvell Orion"
 406        select CPU_ARM926EJS
 407
 408config TARGET_SPEAR300
 409        bool "Support spear300"
 410        select CPU_ARM926EJS
 411        select BOARD_EARLY_INIT_F
 412
 413config TARGET_SPEAR310
 414        bool "Support spear310"
 415        select CPU_ARM926EJS
 416        select BOARD_EARLY_INIT_F
 417
 418config TARGET_SPEAR320
 419        bool "Support spear320"
 420        select CPU_ARM926EJS
 421        select BOARD_EARLY_INIT_F
 422
 423config TARGET_SPEAR600
 424        bool "Support spear600"
 425        select CPU_ARM926EJS
 426        select BOARD_EARLY_INIT_F
 427
 428config TARGET_STV0991
 429        bool "Support stv0991"
 430        select CPU_V7
 431        select DM
 432        select DM_SERIAL
 433        select DM_SPI
 434        select DM_SPI_FLASH
 435        select SPI_FLASH
 436
 437config TARGET_X600
 438        bool "Support x600"
 439        select BOARD_LATE_INIT
 440        select CPU_ARM926EJS
 441        select SUPPORT_SPL
 442
 443config TARGET_IMX31_PHYCORE
 444        bool "Support imx31_phycore_eet"
 445        select CPU_ARM1136
 446        select BOARD_EARLY_INIT_F
 447
 448config TARGET_IMX31_PHYCORE_EET
 449        bool "Support imx31_phycore_eet"
 450        select BOARD_LATE_INIT
 451        select CPU_ARM1136
 452        select BOARD_EARLY_INIT_F
 453
 454config TARGET_MX31ADS
 455        bool "Support mx31ads"
 456        select CPU_ARM1136
 457        select BOARD_EARLY_INIT_F
 458
 459config TARGET_MX31PDK
 460        bool "Support mx31pdk"
 461        select BOARD_LATE_INIT
 462        select CPU_ARM1136
 463        select SUPPORT_SPL
 464        select BOARD_EARLY_INIT_F
 465
 466config TARGET_WOODBURN
 467        bool "Support woodburn"
 468        select CPU_ARM1136
 469
 470config TARGET_WOODBURN_SD
 471        bool "Support woodburn_sd"
 472        select CPU_ARM1136
 473        select SUPPORT_SPL
 474
 475config TARGET_FLEA3
 476        bool "Support flea3"
 477        select CPU_ARM1136
 478
 479config TARGET_MX35PDK
 480        bool "Support mx35pdk"
 481        select BOARD_LATE_INIT
 482        select CPU_ARM1136
 483
 484config ARCH_BCM283X
 485        bool "Broadcom BCM283X family"
 486        select DM
 487        select DM_SERIAL
 488        select DM_GPIO
 489        select OF_CONTROL
 490        imply FAT_WRITE
 491
 492config TARGET_VEXPRESS_CA15_TC2
 493        bool "Support vexpress_ca15_tc2"
 494        select CPU_V7
 495        select CPU_V7_HAS_NONSEC
 496        select CPU_V7_HAS_VIRT
 497
 498config TARGET_VEXPRESS_CA5X2
 499        bool "Support vexpress_ca5x2"
 500        select CPU_V7
 501
 502config TARGET_VEXPRESS_CA9X4
 503        bool "Support vexpress_ca9x4"
 504        select CPU_V7
 505
 506config TARGET_BCM23550_W1D
 507        bool "Support bcm23550_w1d"
 508        select CPU_V7
 509        imply CRC32_VERIFY
 510        imply FAT_WRITE
 511
 512config TARGET_BCM28155_AP
 513        bool "Support bcm28155_ap"
 514        select CPU_V7
 515        imply CRC32_VERIFY
 516        imply FAT_WRITE
 517
 518config TARGET_BCMCYGNUS
 519        bool "Support bcmcygnus"
 520        select CPU_V7
 521        imply CRC32_VERIFY
 522        imply CMD_HASH
 523        imply FAT_WRITE
 524        imply HASH_VERIFY
 525
 526config TARGET_BCMNSP
 527        bool "Support bcmnsp"
 528        select CPU_V7
 529
 530config TARGET_BCMNS2
 531        bool "Support Broadcom Northstar2"
 532        select ARM64
 533        help
 534          Support for Broadcom Northstar 2 SoCs.  NS2 is a quad-core 64-bit
 535          ARMv8 Cortex-A57 processors targeting a broad range of networking
 536          applications
 537
 538config ARCH_EXYNOS
 539        bool "Samsung EXYNOS"
 540        select DM
 541        select DM_I2C
 542        select DM_SPI_FLASH
 543        select DM_SERIAL
 544        select DM_SPI
 545        select DM_GPIO
 546        select DM_KEYBOARD
 547        imply FAT_WRITE
 548
 549config ARCH_S5PC1XX
 550        bool "Samsung S5PC1XX"
 551        select CPU_V7
 552        select DM
 553        select DM_SERIAL
 554        select DM_GPIO
 555        select DM_I2C
 556
 557config ARCH_HIGHBANK
 558        bool "Calxeda Highbank"
 559        select CPU_V7
 560
 561config ARCH_INTEGRATOR
 562        bool "ARM Ltd. Integrator family"
 563        select DM
 564        select DM_SERIAL
 565
 566config ARCH_KEYSTONE
 567        bool "TI Keystone"
 568        select CPU_V7
 569        select SUPPORT_SPL
 570        select SYS_THUMB_BUILD
 571        select CMD_POWEROFF
 572        imply FIT
 573
 574config ARCH_OMAP2PLUS
 575        bool "TI OMAP2+"
 576        select CPU_V7
 577        select SPL_BOARD_INIT if SPL
 578        select SUPPORT_SPL
 579        imply FIT
 580
 581config ARCH_MESON
 582        bool "Amlogic Meson"
 583        help
 584          Support for the Meson SoC family developed by Amlogic Inc.,
 585          targeted at media players and tablet computers. We currently
 586          support the S905 (GXBaby) 64-bit SoC.
 587
 588config ARCH_MX7ULP
 589        bool "NXP MX7ULP"
 590        select CPU_V7
 591        select ROM_UNIFIED_SECTIONS
 592
 593config ARCH_MX7
 594        bool "Freescale MX7"
 595        select CPU_V7
 596        select SYS_FSL_HAS_SEC if SECURE_BOOT
 597        select SYS_FSL_SEC_COMPAT_4
 598        select SYS_FSL_SEC_LE
 599        select BOARD_EARLY_INIT_F
 600        select ARCH_MISC_INIT
 601
 602config ARCH_MX6
 603        bool "Freescale MX6"
 604        select CPU_V7
 605        select SYS_FSL_HAS_SEC if SECURE_BOOT
 606        select SYS_FSL_SEC_COMPAT_4
 607        select SYS_FSL_SEC_LE
 608        select SYS_THUMB_BUILD if SPL
 609
 610config ARCH_MX5
 611        bool "Freescale MX5"
 612        select CPU_V7
 613        select BOARD_EARLY_INIT_F
 614
 615config ARCH_RMOBILE
 616        bool "Renesas ARM SoCs"
 617        select DM
 618        select DM_SERIAL
 619        select BOARD_EARLY_INIT_F
 620        imply FAT_WRITE
 621        imply SYS_THUMB_BUILD
 622
 623config TARGET_S32V234EVB
 624        bool "Support s32v234evb"
 625        select ARM64
 626        select SYS_FSL_ERRATUM_ESDHC111
 627
 628config ARCH_SNAPDRAGON
 629        bool "Qualcomm Snapdragon SoCs"
 630        select ARM64
 631        select DM
 632        select DM_GPIO
 633        select DM_SERIAL
 634        select SPMI
 635        select OF_CONTROL
 636        select OF_SEPARATE
 637
 638config ARCH_SOCFPGA
 639        bool "Altera SOCFPGA family"
 640        select CPU_V7
 641        select SUPPORT_SPL
 642        select OF_CONTROL
 643        select SPL_OF_CONTROL
 644        select DM
 645        select DM_SPI_FLASH
 646        select DM_SPI
 647        select ENABLE_ARM_SOC_BOOT0_HOOK
 648        select ARCH_EARLY_INIT_R
 649        select ARCH_MISC_INIT
 650        select SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
 651        select SYS_THUMB_BUILD
 652        imply CRC32_VERIFY
 653        imply FAT_WRITE
 654
 655config ARCH_SUNXI
 656        bool "Support sunxi (Allwinner) SoCs"
 657        select CMD_GPIO
 658        select CMD_MMC if MMC
 659        select CMD_USB if DISTRO_DEFAULTS
 660        select DM
 661        select DM_ETH
 662        select DM_GPIO
 663        select DM_KEYBOARD
 664        select DM_SERIAL
 665        select DM_USB if DISTRO_DEFAULTS
 666        select OF_BOARD_SETUP
 667        select OF_CONTROL
 668        select OF_SEPARATE
 669        select SPL_STACK_R if SPL
 670        select SPL_SYS_MALLOC_SIMPLE if SPL
 671        select SYS_NS16550
 672        select SPL_SYS_THUMB_BUILD if !ARM64
 673        select USB if DISTRO_DEFAULTS
 674        select USB_STORAGE if DISTRO_DEFAULTS
 675        select USB_KEYBOARD if DISTRO_DEFAULTS
 676        select USE_TINY_PRINTF
 677        imply FAT_WRITE
 678        imply PRE_CONSOLE_BUFFER
 679        imply SPL_GPIO_SUPPORT
 680        imply SPL_LIBCOMMON_SUPPORT
 681        imply SPL_LIBDISK_SUPPORT
 682        imply SPL_LIBGENERIC_SUPPORT
 683        imply SPL_MMC_SUPPORT if MMC
 684        imply SPL_POWER_SUPPORT
 685        imply SPL_SERIAL_SUPPORT
 686
 687config TARGET_TS4600
 688        bool "Support TS4600"
 689        select CPU_ARM926EJS
 690        select SUPPORT_SPL
 691
 692config ARCH_VF610
 693        bool "Freescale Vybrid"
 694        select CPU_V7
 695        select SYS_FSL_ERRATUM_ESDHC111
 696
 697config ARCH_ZYNQ
 698        bool "Xilinx Zynq Platform"
 699        select BOARD_LATE_INIT
 700        select CPU_V7
 701        select SUPPORT_SPL
 702        select OF_CONTROL
 703        select SPL_BOARD_INIT if SPL
 704        select SPL_OF_CONTROL if SPL
 705        select DM
 706        select DM_ETH
 707        select DM_GPIO
 708        select SPL_DM if SPL
 709        select DM_MMC
 710        select DM_MMC_OPS
 711        select DM_SPI
 712        select DM_SERIAL
 713        select DM_SPI_FLASH
 714        select SPL_SEPARATE_BSS if SPL
 715        select DM_USB if USB
 716        select BLK
 717        select CLK
 718        select SPL_CLK
 719        select CLK_ZYNQ
 720        imply CMD_CLK
 721        imply FAT_WRITE
 722
 723config ARCH_ZYNQMP
 724        bool "Support Xilinx ZynqMP Platform"
 725        select ARM64
 726        select BOARD_LATE_INIT
 727        select DM
 728        select OF_CONTROL
 729        select DM_SERIAL
 730        select SUPPORT_SPL
 731        select CLK
 732        select SPL_BOARD_INIT if SPL
 733        select SPL_CLK
 734        select DM_USB if USB
 735        imply FAT_WRITE
 736
 737config TEGRA
 738        bool "NVIDIA Tegra"
 739        imply FAT_WRITE
 740
 741config TARGET_VEXPRESS64_AEMV8A
 742        bool "Support vexpress_aemv8a"
 743        select ARM64
 744
 745config TARGET_VEXPRESS64_BASE_FVP
 746        bool "Support Versatile Express ARMv8a FVP BASE model"
 747        select ARM64
 748        select SEMIHOSTING
 749
 750config TARGET_VEXPRESS64_BASE_FVP_DRAM
 751        bool "Support Versatile Express ARMv8a FVP BASE model booting from DRAM"
 752        select ARM64
 753        help
 754          This target is derived from TARGET_VEXPRESS64_BASE_FVP and over-rides
 755          the default config to allow the user to load the images directly into
 756          DRAM using model parameters rather than by using semi-hosting to load
 757          the files from the host filesystem.
 758
 759config TARGET_VEXPRESS64_JUNO
 760        bool "Support Versatile Express Juno Development Platform"
 761        select ARM64
 762
 763config TARGET_LS2080A_EMU
 764        bool "Support ls2080a_emu"
 765        select ARCH_LS2080A
 766        select ARM64
 767        select ARMV8_MULTIENTRY
 768        select ARCH_MISC_INIT
 769        help
 770          Support for Freescale LS2080A_EMU platform
 771          The LS2080A Development System (EMULATOR) is a pre silicon
 772          development platform that supports the QorIQ LS2080A
 773          Layerscape Architecture processor.
 774
 775config TARGET_LS2080A_SIMU
 776        bool "Support ls2080a_simu"
 777        select ARCH_LS2080A
 778        select ARM64
 779        select ARMV8_MULTIENTRY
 780        select ARCH_MISC_INIT
 781        help
 782          Support for Freescale LS2080A_SIMU platform
 783          The LS2080A Development System (QDS) is a pre silicon
 784          development platform that supports the QorIQ LS2080A
 785          Layerscape Architecture processor.
 786
 787config TARGET_LS2080AQDS
 788        bool "Support ls2080aqds"
 789        select ARCH_LS2080A
 790        select ARM64
 791        select ARMV8_MULTIENTRY
 792        select BOARD_LATE_INIT
 793        select SUPPORT_SPL
 794        select ARCH_MISC_INIT
 795        help
 796          Support for Freescale LS2080AQDS platform
 797          The LS2080A Development System (QDS) is a high-performance
 798          development platform that supports the QorIQ LS2080A
 799          Layerscape Architecture processor.
 800
 801config TARGET_LS2080ARDB
 802        bool "Support ls2080ardb"
 803        select ARCH_LS2080A
 804        select ARM64
 805        select ARMV8_MULTIENTRY
 806        select BOARD_LATE_INIT
 807        select SUPPORT_SPL
 808        select ARCH_MISC_INIT
 809        help
 810          Support for Freescale LS2080ARDB platform.
 811          The LS2080A Reference design board (RDB) is a high-performance
 812          development platform that supports the QorIQ LS2080A
 813          Layerscape Architecture processor.
 814
 815config TARGET_LS2081ARDB
 816        bool "Support ls2081ardb"
 817        select ARCH_LS2080A
 818        select ARM64
 819        select ARMV8_MULTIENTRY
 820        select BOARD_LATE_INIT
 821        select SUPPORT_SPL
 822        select ARCH_MISC_INIT
 823        help
 824          Support for Freescale LS2081ARDB platform.
 825          The LS2081A Reference design board (RDB) is a high-performance
 826          development platform that supports the QorIQ LS2081A/LS2041A
 827          Layerscape Architecture processor.
 828
 829config TARGET_HIKEY
 830        bool "Support HiKey 96boards Consumer Edition Platform"
 831        select ARM64
 832        select DM
 833        select DM_GPIO
 834        select DM_SERIAL
 835        select OF_CONTROL
 836          help
 837          Support for HiKey 96boards platform. It features a HI6220
 838          SoC, with 8xA53 CPU, mali450 gpu, and 1GB RAM.
 839
 840config TARGET_LS1012AQDS
 841        bool "Support ls1012aqds"
 842        select ARCH_LS1012A
 843        select ARM64
 844        select BOARD_LATE_INIT
 845        help
 846          Support for Freescale LS1012AQDS platform.
 847          The LS1012A Development System (QDS) is a high-performance
 848          development platform that supports the QorIQ LS1012A
 849          Layerscape Architecture processor.
 850
 851config TARGET_LS1012ARDB
 852        bool "Support ls1012ardb"
 853        select ARCH_LS1012A
 854        select ARM64
 855        select BOARD_LATE_INIT
 856        help
 857          Support for Freescale LS1012ARDB platform.
 858          The LS1012A Reference design board (RDB) is a high-performance
 859          development platform that supports the QorIQ LS1012A
 860          Layerscape Architecture processor.
 861
 862config TARGET_LS1012AFRDM
 863        bool "Support ls1012afrdm"
 864        select ARCH_LS1012A
 865        select ARM64
 866        help
 867          Support for Freescale LS1012AFRDM platform.
 868          The LS1012A Freedom  board (FRDM) is a high-performance
 869          development platform that supports the QorIQ LS1012A
 870          Layerscape Architecture processor.
 871
 872config TARGET_LS1021AQDS
 873        bool "Support ls1021aqds"
 874        select BOARD_LATE_INIT
 875        select CPU_V7
 876        select CPU_V7_HAS_NONSEC
 877        select CPU_V7_HAS_VIRT
 878        select SUPPORT_SPL
 879        select ARCH_LS1021A
 880        select ARCH_SUPPORT_PSCI
 881        select LS1_DEEP_SLEEP
 882        select SYS_FSL_DDR
 883        select BOARD_EARLY_INIT_F
 884
 885config TARGET_LS1021ATWR
 886        bool "Support ls1021atwr"
 887        select BOARD_LATE_INIT
 888        select CPU_V7
 889        select CPU_V7_HAS_NONSEC
 890        select CPU_V7_HAS_VIRT
 891        select SUPPORT_SPL
 892        select ARCH_LS1021A
 893        select ARCH_SUPPORT_PSCI
 894        select LS1_DEEP_SLEEP
 895        select BOARD_EARLY_INIT_F
 896
 897config TARGET_LS1021AIOT
 898        bool "Support ls1021aiot"
 899        select BOARD_LATE_INIT
 900        select CPU_V7
 901        select CPU_V7_HAS_NONSEC
 902        select CPU_V7_HAS_VIRT
 903        select SUPPORT_SPL
 904        select ARCH_LS1021A
 905        select ARCH_SUPPORT_PSCI
 906        help
 907          Support for Freescale LS1021AIOT platform.
 908          The LS1021A Freescale board (IOT) is a high-performance
 909          development platform that supports the QorIQ LS1021A
 910          Layerscape Architecture processor.
 911
 912config TARGET_LS1043AQDS
 913        bool "Support ls1043aqds"
 914        select ARCH_LS1043A
 915        select ARM64
 916        select ARMV8_MULTIENTRY
 917        select BOARD_LATE_INIT
 918        select SUPPORT_SPL
 919        select BOARD_EARLY_INIT_F
 920        help
 921          Support for Freescale LS1043AQDS platform.
 922
 923config TARGET_LS1043ARDB
 924        bool "Support ls1043ardb"
 925        select ARCH_LS1043A
 926        select ARM64
 927        select ARMV8_MULTIENTRY
 928        select BOARD_LATE_INIT
 929        select SUPPORT_SPL
 930        select BOARD_EARLY_INIT_F
 931        help
 932          Support for Freescale LS1043ARDB platform.
 933
 934config TARGET_LS1046AQDS
 935        bool "Support ls1046aqds"
 936        select ARCH_LS1046A
 937        select ARM64
 938        select ARMV8_MULTIENTRY
 939        select BOARD_LATE_INIT
 940        select SUPPORT_SPL
 941        select DM_SPI_FLASH if DM_SPI
 942        select BOARD_EARLY_INIT_F
 943        help
 944          Support for Freescale LS1046AQDS platform.
 945          The LS1046A Development System (QDS) is a high-performance
 946          development platform that supports the QorIQ LS1046A
 947          Layerscape Architecture processor.
 948
 949config TARGET_LS1046ARDB
 950        bool "Support ls1046ardb"
 951        select ARCH_LS1046A
 952        select ARM64
 953        select ARMV8_MULTIENTRY
 954        select BOARD_LATE_INIT
 955        select SUPPORT_SPL
 956        select DM_SPI_FLASH if DM_SPI
 957        select POWER_MC34VR500
 958        select BOARD_EARLY_INIT_F
 959        help
 960          Support for Freescale LS1046ARDB platform.
 961          The LS1046A Reference Design Board (RDB) is a high-performance
 962          development platform that supports the QorIQ LS1046A
 963          Layerscape Architecture processor.
 964
 965config TARGET_H2200
 966        bool "Support h2200"
 967        select CPU_PXA
 968
 969config TARGET_ZIPITZ2
 970        bool "Support zipitz2"
 971        select CPU_PXA
 972
 973config TARGET_COLIBRI_PXA270
 974        bool "Support colibri_pxa270"
 975        select CPU_PXA
 976
 977config ARCH_UNIPHIER
 978        bool "Socionext UniPhier SoCs"
 979        select BOARD_LATE_INIT
 980        select CLK_UNIPHIER
 981        select DM
 982        select DM_GPIO
 983        select DM_I2C
 984        select DM_MMC
 985        select DM_RESET
 986        select DM_SERIAL
 987        select DM_USB
 988        select OF_CONTROL
 989        select OF_LIBFDT
 990        select PINCTRL
 991        select SPL_BOARD_INIT if SPL
 992        select SPL_DM if SPL
 993        select SPL_LIBCOMMON_SUPPORT if SPL
 994        select SPL_LIBGENERIC_SUPPORT if SPL
 995        select SPL_OF_CONTROL if SPL
 996        select SPL_PINCTRL if SPL
 997        select SUPPORT_SPL
 998        imply FAT_WRITE
 999        help
1000          Support for UniPhier SoC family developed by Socionext Inc.
1001          (formerly, System LSI Business Division of Panasonic Corporation)
1002
1003config STM32
1004        bool "Support STM32"
1005        select CPU_V7M
1006        select DM
1007        select DM_SERIAL
1008        select SYS_THUMB_BUILD
1009
1010config ARCH_STI
1011        bool "Support STMicrolectronics SoCs"
1012        select CPU_V7
1013        select DM
1014        select DM_SERIAL
1015        select BLK
1016        select DM_MMC
1017        select DM_RESET
1018        help
1019          Support for STMicroelectronics STiH407/10 SoC family.
1020          This SoC is used on Linaro 96Board STiH410-B2260
1021
1022config ARCH_ROCKCHIP
1023        bool "Support Rockchip SoCs"
1024        select OF_CONTROL
1025        select BLK
1026        select DM
1027        select SPL_DM if SPL
1028        select SYS_MALLOC_F
1029        select SYS_THUMB_BUILD if !ARM64
1030        select SPL_SYS_MALLOC_SIMPLE if SPL
1031        select DM_GPIO
1032        select DM_I2C
1033        select DM_MMC
1034        select DM_MMC_OPS
1035        select DM_SERIAL
1036        select DM_SPI
1037        select DM_SPI_FLASH
1038        select DM_USB if USB
1039        select DM_PWM
1040        select DM_REGULATOR
1041        imply FAT_WRITE
1042
1043config TARGET_THUNDERX_88XX
1044        bool "Support ThunderX 88xx"
1045        select ARM64
1046        select OF_CONTROL
1047        select SYS_CACHE_SHIFT_7
1048
1049config ARCH_ASPEED
1050        bool "Support Aspeed SoCs"
1051        select OF_CONTROL
1052        select DM
1053
1054endchoice
1055
1056source "arch/arm/mach-aspeed/Kconfig"
1057
1058source "arch/arm/mach-at91/Kconfig"
1059
1060source "arch/arm/mach-bcm283x/Kconfig"
1061
1062source "arch/arm/mach-davinci/Kconfig"
1063
1064source "arch/arm/mach-exynos/Kconfig"
1065
1066source "arch/arm/mach-highbank/Kconfig"
1067
1068source "arch/arm/mach-integrator/Kconfig"
1069
1070source "arch/arm/mach-keystone/Kconfig"
1071
1072source "arch/arm/mach-kirkwood/Kconfig"
1073
1074source "arch/arm/mach-mvebu/Kconfig"
1075
1076source "arch/arm/cpu/armv7/ls102xa/Kconfig"
1077
1078source "arch/arm/cpu/armv7/mx7ulp/Kconfig"
1079
1080source "arch/arm/cpu/armv7/mx7/Kconfig"
1081
1082source "arch/arm/cpu/armv7/mx6/Kconfig"
1083
1084source "arch/arm/cpu/armv7/mx5/Kconfig"
1085
1086source "arch/arm/mach-omap2/Kconfig"
1087
1088source "arch/arm/cpu/armv8/fsl-layerscape/Kconfig"
1089
1090source "arch/arm/mach-orion5x/Kconfig"
1091
1092source "arch/arm/mach-rmobile/Kconfig"
1093
1094source "arch/arm/mach-meson/Kconfig"
1095
1096source "arch/arm/mach-rockchip/Kconfig"
1097
1098source "arch/arm/mach-s5pc1xx/Kconfig"
1099
1100source "arch/arm/mach-snapdragon/Kconfig"
1101
1102source "arch/arm/mach-socfpga/Kconfig"
1103
1104source "arch/arm/mach-sti/Kconfig"
1105
1106source "arch/arm/mach-stm32/Kconfig"
1107
1108source "arch/arm/mach-sunxi/Kconfig"
1109
1110source "arch/arm/mach-tegra/Kconfig"
1111
1112source "arch/arm/mach-uniphier/Kconfig"
1113
1114source "arch/arm/cpu/armv7/vf610/Kconfig"
1115
1116source "arch/arm/mach-zynq/Kconfig"
1117
1118source "arch/arm/cpu/armv7/Kconfig"
1119
1120source "arch/arm/cpu/armv8/zynqmp/Kconfig"
1121
1122source "arch/arm/cpu/armv8/Kconfig"
1123
1124source "arch/arm/imx-common/Kconfig"
1125
1126source "board/aries/m28evk/Kconfig"
1127source "board/bosch/shc/Kconfig"
1128source "board/CarMediaLab/flea3/Kconfig"
1129source "board/Marvell/aspenite/Kconfig"
1130source "board/Marvell/gplugd/Kconfig"
1131source "board/armadeus/apf27/Kconfig"
1132source "board/armltd/vexpress/Kconfig"
1133source "board/armltd/vexpress64/Kconfig"
1134source "board/bluegiga/apx4devkit/Kconfig"
1135source "board/broadcom/bcm23550_w1d/Kconfig"
1136source "board/broadcom/bcm28155_ap/Kconfig"
1137source "board/broadcom/bcmcygnus/Kconfig"
1138source "board/broadcom/bcmnsp/Kconfig"
1139source "board/broadcom/bcmns2/Kconfig"
1140source "board/cavium/thunderx/Kconfig"
1141source "board/cirrus/edb93xx/Kconfig"
1142source "board/creative/xfi3/Kconfig"
1143source "board/freescale/ls2080a/Kconfig"
1144source "board/freescale/ls2080aqds/Kconfig"
1145source "board/freescale/ls2080ardb/Kconfig"
1146source "board/freescale/ls1021aqds/Kconfig"
1147source "board/freescale/ls1043aqds/Kconfig"
1148source "board/freescale/ls1021atwr/Kconfig"
1149source "board/freescale/ls1021aiot/Kconfig"
1150source "board/freescale/ls1046aqds/Kconfig"
1151source "board/freescale/ls1043ardb/Kconfig"
1152source "board/freescale/ls1046ardb/Kconfig"
1153source "board/freescale/ls1012aqds/Kconfig"
1154source "board/freescale/ls1012ardb/Kconfig"
1155source "board/freescale/ls1012afrdm/Kconfig"
1156source "board/freescale/mx23evk/Kconfig"
1157source "board/freescale/mx25pdk/Kconfig"
1158source "board/freescale/mx28evk/Kconfig"
1159source "board/freescale/mx31ads/Kconfig"
1160source "board/freescale/mx31pdk/Kconfig"
1161source "board/freescale/mx35pdk/Kconfig"
1162source "board/freescale/s32v234evb/Kconfig"
1163source "board/gdsys/a38x/Kconfig"
1164source "board/grinn/chiliboard/Kconfig"
1165source "board/gumstix/pepper/Kconfig"
1166source "board/h2200/Kconfig"
1167source "board/hisilicon/hikey/Kconfig"
1168source "board/imx31_phycore/Kconfig"
1169source "board/isee/igep003x/Kconfig"
1170source "board/olimex/mx23_olinuxino/Kconfig"
1171source "board/phytec/pcm051/Kconfig"
1172source "board/ppcag/bg0900/Kconfig"
1173source "board/sandisk/sansa_fuze_plus/Kconfig"
1174source "board/schulercontrol/sc_sps_1/Kconfig"
1175source "board/silica/pengwyn/Kconfig"
1176source "board/spear/spear300/Kconfig"
1177source "board/spear/spear310/Kconfig"
1178source "board/spear/spear320/Kconfig"
1179source "board/spear/spear600/Kconfig"
1180source "board/spear/x600/Kconfig"
1181source "board/st/stv0991/Kconfig"
1182source "board/syteco/zmx25/Kconfig"
1183source "board/tcl/sl50/Kconfig"
1184source "board/birdland/bav335x/Kconfig"
1185source "board/timll/devkit3250/Kconfig"
1186source "board/toradex/colibri_pxa270/Kconfig"
1187source "board/technologic/ts4600/Kconfig"
1188source "board/vscom/baltos/Kconfig"
1189source "board/woodburn/Kconfig"
1190source "board/work-microwave/work_92105/Kconfig"
1191source "board/zipitz2/Kconfig"
1192
1193source "arch/arm/Kconfig.debug"
1194
1195endmenu
1196