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