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