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