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 FAT_WRITE 697 imply PRE_CONSOLE_BUFFER 698 imply SPL_GPIO_SUPPORT 699 imply SPL_LIBCOMMON_SUPPORT 700 imply SPL_LIBDISK_SUPPORT 701 imply SPL_LIBGENERIC_SUPPORT 702 imply SPL_MMC_SUPPORT if MMC 703 imply SPL_POWER_SUPPORT 704 imply SPL_SERIAL_SUPPORT 705 706config TARGET_TS4600 707 bool "Support TS4600" 708 select CPU_ARM926EJS 709 select SUPPORT_SPL 710 711config ARCH_VF610 712 bool "Freescale Vybrid" 713 select CPU_V7 714 select SYS_FSL_ERRATUM_ESDHC111 715 imply CMD_MTDPARTS 716 imply NAND 717 718config ARCH_ZYNQ 719 bool "Xilinx Zynq Platform" 720 select BOARD_LATE_INIT 721 select CPU_V7 722 select SUPPORT_SPL 723 select OF_CONTROL 724 select SPL_BOARD_INIT if SPL 725 select SPL_OF_CONTROL if SPL 726 select DM 727 select DM_ETH 728 select DM_GPIO 729 select SPL_DM if SPL 730 select DM_MMC 731 select DM_MMC_OPS 732 select DM_SPI 733 select DM_SERIAL 734 select DM_SPI_FLASH 735 select SPL_SEPARATE_BSS if SPL 736 select DM_USB if USB 737 select BLK 738 select CLK 739 select SPL_CLK 740 select CLK_ZYNQ 741 imply CMD_CLK 742 imply FAT_WRITE 743 imply CMD_SPL 744 745config ARCH_ZYNQMP 746 bool "Support Xilinx ZynqMP Platform" 747 select ARM64 748 select BOARD_LATE_INIT 749 select DM 750 select OF_CONTROL 751 select DM_SERIAL 752 select SUPPORT_SPL 753 select CLK 754 select SPL_BOARD_INIT if SPL 755 select SPL_CLK 756 select DM_USB if USB 757 imply FAT_WRITE 758 759config TEGRA 760 bool "NVIDIA Tegra" 761 imply FAT_WRITE 762 763config TARGET_VEXPRESS64_AEMV8A 764 bool "Support vexpress_aemv8a" 765 select ARM64 766 767config TARGET_VEXPRESS64_BASE_FVP 768 bool "Support Versatile Express ARMv8a FVP BASE model" 769 select ARM64 770 select SEMIHOSTING 771 772config TARGET_VEXPRESS64_BASE_FVP_DRAM 773 bool "Support Versatile Express ARMv8a FVP BASE model booting from DRAM" 774 select ARM64 775 help 776 This target is derived from TARGET_VEXPRESS64_BASE_FVP and over-rides 777 the default config to allow the user to load the images directly into 778 DRAM using model parameters rather than by using semi-hosting to load 779 the files from the host filesystem. 780 781config TARGET_VEXPRESS64_JUNO 782 bool "Support Versatile Express Juno Development Platform" 783 select ARM64 784 785config TARGET_LS2080A_EMU 786 bool "Support ls2080a_emu" 787 select ARCH_LS2080A 788 select ARM64 789 select ARMV8_MULTIENTRY 790 select ARCH_MISC_INIT 791 help 792 Support for Freescale LS2080A_EMU platform 793 The LS2080A Development System (EMULATOR) is a pre silicon 794 development platform that supports the QorIQ LS2080A 795 Layerscape Architecture processor. 796 797config TARGET_LS2080A_SIMU 798 bool "Support ls2080a_simu" 799 select ARCH_LS2080A 800 select ARM64 801 select ARMV8_MULTIENTRY 802 select ARCH_MISC_INIT 803 help 804 Support for Freescale LS2080A_SIMU platform 805 The LS2080A Development System (QDS) is a pre silicon 806 development platform that supports the QorIQ LS2080A 807 Layerscape Architecture processor. 808 809config TARGET_LS2080AQDS 810 bool "Support ls2080aqds" 811 select ARCH_LS2080A 812 select ARM64 813 select ARMV8_MULTIENTRY 814 select BOARD_LATE_INIT 815 select SUPPORT_SPL 816 select ARCH_MISC_INIT 817 imply SCSI 818 help 819 Support for Freescale LS2080AQDS platform 820 The LS2080A Development System (QDS) is a high-performance 821 development platform that supports the QorIQ LS2080A 822 Layerscape Architecture processor. 823 824config TARGET_LS2080ARDB 825 bool "Support ls2080ardb" 826 select ARCH_LS2080A 827 select ARM64 828 select ARMV8_MULTIENTRY 829 select BOARD_LATE_INIT 830 select SUPPORT_SPL 831 select ARCH_MISC_INIT 832 imply SCSI 833 help 834 Support for Freescale LS2080ARDB platform. 835 The LS2080A Reference design board (RDB) is a high-performance 836 development platform that supports the QorIQ LS2080A 837 Layerscape Architecture processor. 838 839config TARGET_LS2081ARDB 840 bool "Support ls2081ardb" 841 select ARCH_LS2080A 842 select ARM64 843 select ARMV8_MULTIENTRY 844 select BOARD_LATE_INIT 845 select SUPPORT_SPL 846 select ARCH_MISC_INIT 847 help 848 Support for Freescale LS2081ARDB platform. 849 The LS2081A Reference design board (RDB) is a high-performance 850 development platform that supports the QorIQ LS2081A/LS2041A 851 Layerscape Architecture processor. 852 853config TARGET_HIKEY 854 bool "Support HiKey 96boards Consumer Edition Platform" 855 select ARM64 856 select DM 857 select DM_GPIO 858 select DM_SERIAL 859 select OF_CONTROL 860 help 861 Support for HiKey 96boards platform. It features a HI6220 862 SoC, with 8xA53 CPU, mali450 gpu, and 1GB RAM. 863 864config TARGET_POPLAR 865 bool "Support Poplar 96boards Enterprise Edition Platform" 866 select ARM64 867 select DM 868 select OF_CONTROL 869 select DM_SERIAL 870 select DM_USB 871 help 872 Support for Poplar 96boards EE platform. It features a HI3798cv200 873 SoC, with 4xA53 CPU, 1GB RAM and the high performance Mali T720 GPU 874 making it capable of running any commercial set-top solution based on 875 Linux or Android. 876 877config TARGET_LS1012AQDS 878 bool "Support ls1012aqds" 879 select ARCH_LS1012A 880 select ARM64 881 select BOARD_LATE_INIT 882 help 883 Support for Freescale LS1012AQDS platform. 884 The LS1012A Development System (QDS) is a high-performance 885 development platform that supports the QorIQ LS1012A 886 Layerscape Architecture processor. 887 888config TARGET_LS1012ARDB 889 bool "Support ls1012ardb" 890 select ARCH_LS1012A 891 select ARM64 892 select BOARD_LATE_INIT 893 imply SCSI 894 help 895 Support for Freescale LS1012ARDB platform. 896 The LS1012A Reference design board (RDB) is a high-performance 897 development platform that supports the QorIQ LS1012A 898 Layerscape Architecture processor. 899 900config TARGET_LS1012AFRDM 901 bool "Support ls1012afrdm" 902 select ARCH_LS1012A 903 select ARM64 904 help 905 Support for Freescale LS1012AFRDM platform. 906 The LS1012A Freedom board (FRDM) is a high-performance 907 development platform that supports the QorIQ LS1012A 908 Layerscape Architecture processor. 909 910config TARGET_LS1021AQDS 911 bool "Support ls1021aqds" 912 select BOARD_LATE_INIT 913 select CPU_V7 914 select CPU_V7_HAS_NONSEC 915 select CPU_V7_HAS_VIRT 916 select SUPPORT_SPL 917 select ARCH_LS1021A 918 select ARCH_SUPPORT_PSCI 919 select LS1_DEEP_SLEEP 920 select SYS_FSL_DDR 921 select BOARD_EARLY_INIT_F 922 imply SCSI 923 924config TARGET_LS1021ATWR 925 bool "Support ls1021atwr" 926 select BOARD_LATE_INIT 927 select CPU_V7 928 select CPU_V7_HAS_NONSEC 929 select CPU_V7_HAS_VIRT 930 select SUPPORT_SPL 931 select ARCH_LS1021A 932 select ARCH_SUPPORT_PSCI 933 select LS1_DEEP_SLEEP 934 select BOARD_EARLY_INIT_F 935 imply SCSI 936 937config TARGET_LS1021AIOT 938 bool "Support ls1021aiot" 939 select BOARD_LATE_INIT 940 select CPU_V7 941 select CPU_V7_HAS_NONSEC 942 select CPU_V7_HAS_VIRT 943 select SUPPORT_SPL 944 select ARCH_LS1021A 945 select ARCH_SUPPORT_PSCI 946 imply SCSI 947 help 948 Support for Freescale LS1021AIOT platform. 949 The LS1021A Freescale board (IOT) is a high-performance 950 development platform that supports the QorIQ LS1021A 951 Layerscape Architecture processor. 952 953config TARGET_LS1043AQDS 954 bool "Support ls1043aqds" 955 select ARCH_LS1043A 956 select ARM64 957 select ARMV8_MULTIENTRY 958 select BOARD_LATE_INIT 959 select SUPPORT_SPL 960 select BOARD_EARLY_INIT_F 961 imply SCSI 962 help 963 Support for Freescale LS1043AQDS platform. 964 965config TARGET_LS1043ARDB 966 bool "Support ls1043ardb" 967 select ARCH_LS1043A 968 select ARM64 969 select ARMV8_MULTIENTRY 970 select BOARD_LATE_INIT 971 select SUPPORT_SPL 972 select BOARD_EARLY_INIT_F 973 imply SCSI 974 help 975 Support for Freescale LS1043ARDB platform. 976 977config TARGET_LS1046AQDS 978 bool "Support ls1046aqds" 979 select ARCH_LS1046A 980 select ARM64 981 select ARMV8_MULTIENTRY 982 select BOARD_LATE_INIT 983 select SUPPORT_SPL 984 select DM_SPI_FLASH if DM_SPI 985 select BOARD_EARLY_INIT_F 986 imply SCSI 987 help 988 Support for Freescale LS1046AQDS platform. 989 The LS1046A Development System (QDS) is a high-performance 990 development platform that supports the QorIQ LS1046A 991 Layerscape Architecture processor. 992 993config TARGET_LS1046ARDB 994 bool "Support ls1046ardb" 995 select ARCH_LS1046A 996 select ARM64 997 select ARMV8_MULTIENTRY 998 select BOARD_LATE_INIT 999 select SUPPORT_SPL 1000 select DM_SPI_FLASH if DM_SPI 1001 select POWER_MC34VR500 1002 select BOARD_EARLY_INIT_F 1003 imply SCSI 1004 help 1005 Support for Freescale LS1046ARDB platform. 1006 The LS1046A Reference Design Board (RDB) is a high-performance 1007 development platform that supports the QorIQ LS1046A 1008 Layerscape Architecture processor. 1009 1010config TARGET_H2200 1011 bool "Support h2200" 1012 select CPU_PXA 1013 1014config TARGET_ZIPITZ2 1015 bool "Support zipitz2" 1016 select CPU_PXA 1017 1018config TARGET_COLIBRI_PXA270 1019 bool "Support colibri_pxa270" 1020 select CPU_PXA 1021 1022config ARCH_UNIPHIER 1023 bool "Socionext UniPhier SoCs" 1024 select BOARD_LATE_INIT 1025 select CLK_UNIPHIER 1026 select DM 1027 select DM_GPIO 1028 select DM_I2C 1029 select DM_MMC 1030 select DM_RESET 1031 select DM_SERIAL 1032 select DM_USB 1033 select OF_CONTROL 1034 select OF_LIBFDT 1035 select PINCTRL 1036 select SPL_BOARD_INIT if SPL 1037 select SPL_DM if SPL 1038 select SPL_LIBCOMMON_SUPPORT if SPL 1039 select SPL_LIBGENERIC_SUPPORT if SPL 1040 select SPL_OF_CONTROL if SPL 1041 select SPL_PINCTRL if SPL 1042 select SUPPORT_SPL 1043 imply FAT_WRITE 1044 help 1045 Support for UniPhier SoC family developed by Socionext Inc. 1046 (formerly, System LSI Business Division of Panasonic Corporation) 1047 1048config STM32 1049 bool "Support STM32" 1050 select CPU_V7M 1051 select DM 1052 select DM_SERIAL 1053 select SYS_THUMB_BUILD 1054 1055config ARCH_STI 1056 bool "Support STMicrolectronics SoCs" 1057 select CPU_V7 1058 select DM 1059 select DM_SERIAL 1060 select BLK 1061 select DM_MMC 1062 select DM_RESET 1063 help 1064 Support for STMicroelectronics STiH407/10 SoC family. 1065 This SoC is used on Linaro 96Board STiH410-B2260 1066 1067config ARCH_ROCKCHIP 1068 bool "Support Rockchip SoCs" 1069 select OF_CONTROL 1070 select BLK 1071 select DM 1072 select SPL_DM if SPL 1073 select SYS_MALLOC_F 1074 select SYS_THUMB_BUILD if !ARM64 1075 select SPL_SYS_MALLOC_SIMPLE if SPL 1076 select DM_GPIO 1077 select DM_I2C 1078 select DM_MMC 1079 select DM_MMC_OPS 1080 select DM_SERIAL 1081 select DM_SPI 1082 select DM_SPI_FLASH 1083 select DM_USB if USB 1084 select DM_PWM 1085 select DM_REGULATOR 1086 imply FAT_WRITE 1087 1088config TARGET_THUNDERX_88XX 1089 bool "Support ThunderX 88xx" 1090 select ARM64 1091 select OF_CONTROL 1092 select SYS_CACHE_SHIFT_7 1093 1094config ARCH_ASPEED 1095 bool "Support Aspeed SoCs" 1096 select OF_CONTROL 1097 select DM 1098 1099endchoice 1100 1101source "arch/arm/mach-aspeed/Kconfig" 1102 1103source "arch/arm/mach-at91/Kconfig" 1104 1105source "arch/arm/mach-bcm283x/Kconfig" 1106 1107source "arch/arm/mach-davinci/Kconfig" 1108 1109source "arch/arm/mach-exynos/Kconfig" 1110 1111source "arch/arm/mach-highbank/Kconfig" 1112 1113source "arch/arm/mach-integrator/Kconfig" 1114 1115source "arch/arm/mach-keystone/Kconfig" 1116 1117source "arch/arm/mach-kirkwood/Kconfig" 1118 1119source "arch/arm/mach-mvebu/Kconfig" 1120 1121source "arch/arm/cpu/armv7/ls102xa/Kconfig" 1122 1123source "arch/arm/mach-imx/mx7ulp/Kconfig" 1124 1125source "arch/arm/mach-imx/mx7/Kconfig" 1126 1127source "arch/arm/mach-imx/mx6/Kconfig" 1128 1129source "arch/arm/mach-imx/mx5/Kconfig" 1130 1131source "arch/arm/mach-omap2/Kconfig" 1132 1133source "arch/arm/cpu/armv8/fsl-layerscape/Kconfig" 1134 1135source "arch/arm/mach-orion5x/Kconfig" 1136 1137source "arch/arm/mach-rmobile/Kconfig" 1138 1139source "arch/arm/mach-meson/Kconfig" 1140 1141source "arch/arm/mach-rockchip/Kconfig" 1142 1143source "arch/arm/mach-s5pc1xx/Kconfig" 1144 1145source "arch/arm/mach-snapdragon/Kconfig" 1146 1147source "arch/arm/mach-socfpga/Kconfig" 1148 1149source "arch/arm/mach-sti/Kconfig" 1150 1151source "arch/arm/mach-stm32/Kconfig" 1152 1153source "arch/arm/mach-sunxi/Kconfig" 1154 1155source "arch/arm/mach-tegra/Kconfig" 1156 1157source "arch/arm/mach-uniphier/Kconfig" 1158 1159source "arch/arm/cpu/armv7/vf610/Kconfig" 1160 1161source "arch/arm/mach-zynq/Kconfig" 1162 1163source "arch/arm/cpu/armv7/Kconfig" 1164 1165source "arch/arm/cpu/armv8/zynqmp/Kconfig" 1166 1167source "arch/arm/cpu/armv8/Kconfig" 1168 1169source "arch/arm/mach-imx/Kconfig" 1170 1171source "board/aries/m28evk/Kconfig" 1172source "board/bosch/shc/Kconfig" 1173source "board/CarMediaLab/flea3/Kconfig" 1174source "board/Marvell/aspenite/Kconfig" 1175source "board/Marvell/gplugd/Kconfig" 1176source "board/armadeus/apf27/Kconfig" 1177source "board/armltd/vexpress/Kconfig" 1178source "board/armltd/vexpress64/Kconfig" 1179source "board/bluegiga/apx4devkit/Kconfig" 1180source "board/broadcom/bcm23550_w1d/Kconfig" 1181source "board/broadcom/bcm28155_ap/Kconfig" 1182source "board/broadcom/bcmcygnus/Kconfig" 1183source "board/broadcom/bcmnsp/Kconfig" 1184source "board/broadcom/bcmns2/Kconfig" 1185source "board/cavium/thunderx/Kconfig" 1186source "board/cirrus/edb93xx/Kconfig" 1187source "board/creative/xfi3/Kconfig" 1188source "board/freescale/ls2080a/Kconfig" 1189source "board/freescale/ls2080aqds/Kconfig" 1190source "board/freescale/ls2080ardb/Kconfig" 1191source "board/freescale/ls1021aqds/Kconfig" 1192source "board/freescale/ls1043aqds/Kconfig" 1193source "board/freescale/ls1021atwr/Kconfig" 1194source "board/freescale/ls1021aiot/Kconfig" 1195source "board/freescale/ls1046aqds/Kconfig" 1196source "board/freescale/ls1043ardb/Kconfig" 1197source "board/freescale/ls1046ardb/Kconfig" 1198source "board/freescale/ls1012aqds/Kconfig" 1199source "board/freescale/ls1012ardb/Kconfig" 1200source "board/freescale/ls1012afrdm/Kconfig" 1201source "board/freescale/mx23evk/Kconfig" 1202source "board/freescale/mx25pdk/Kconfig" 1203source "board/freescale/mx28evk/Kconfig" 1204source "board/freescale/mx31ads/Kconfig" 1205source "board/freescale/mx31pdk/Kconfig" 1206source "board/freescale/mx35pdk/Kconfig" 1207source "board/freescale/s32v234evb/Kconfig" 1208source "board/gdsys/a38x/Kconfig" 1209source "board/grinn/chiliboard/Kconfig" 1210source "board/gumstix/pepper/Kconfig" 1211source "board/h2200/Kconfig" 1212source "board/hisilicon/hikey/Kconfig" 1213source "board/hisilicon/poplar/Kconfig" 1214source "board/imx31_phycore/Kconfig" 1215source "board/isee/igep003x/Kconfig" 1216source "board/olimex/mx23_olinuxino/Kconfig" 1217source "board/phytec/pcm051/Kconfig" 1218source "board/ppcag/bg0900/Kconfig" 1219source "board/sandisk/sansa_fuze_plus/Kconfig" 1220source "board/schulercontrol/sc_sps_1/Kconfig" 1221source "board/silica/pengwyn/Kconfig" 1222source "board/spear/spear300/Kconfig" 1223source "board/spear/spear310/Kconfig" 1224source "board/spear/spear320/Kconfig" 1225source "board/spear/spear600/Kconfig" 1226source "board/spear/x600/Kconfig" 1227source "board/st/stv0991/Kconfig" 1228source "board/syteco/zmx25/Kconfig" 1229source "board/tcl/sl50/Kconfig" 1230source "board/birdland/bav335x/Kconfig" 1231source "board/timll/devkit3250/Kconfig" 1232source "board/toradex/colibri_pxa270/Kconfig" 1233source "board/technologic/ts4600/Kconfig" 1234source "board/vscom/baltos/Kconfig" 1235source "board/woodburn/Kconfig" 1236source "board/work-microwave/work_92105/Kconfig" 1237source "board/zipitz2/Kconfig" 1238 1239source "arch/arm/Kconfig.debug" 1240 1241endmenu 1242 1243config SPL_LDSCRIPT 1244 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 1245 default "arch/arm/cpu/arm1136/u-boot-spl.lds" if CPU_ARM1136 1246 default "arch/arm/cpu/armv8/u-boot-spl.lds" if ARM64 1247 1248 1249