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