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