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