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