]> git.sur5r.net Git - u-boot/blobdiff - arch/arm/Kconfig
arm64: zynqmp: Enable SPL_CLK when SPL is enabled
[u-boot] / arch / arm / Kconfig
index 3c3f5f7d05d53dbadaf3e02556744aeb3151c02c..f2c35e32c64948bdc3e8d030658aab3943aaa1de 100644 (file)
@@ -9,6 +9,22 @@ config ARM64
        select PHYS_64BIT
        select SYS_CACHE_SHIFT_6
 
+if ARM64
+config POSITION_INDEPENDENT
+       bool "Generate position-independent pre-relocation code"
+       help
+         U-Boot expects to be linked to a specific hard-coded address, and to
+         be loaded to and run from that address. This option lifts that
+         restriction, thus allowing the code to be loaded to and executed
+         from almost any address. This logic relies on the relocation
+         information that is embedded into the binary to support U-Boot
+         relocating itself to the top-of-RAM later during execution.
+endif
+
+config STATIC_RELA
+       bool
+       default y if ARM64 && !POSITION_INDEPENDENT
+
 config DMA_ADDR_T_64BIT
        bool
        default y if ARM64
@@ -97,6 +113,9 @@ config ARM_ERRATA_833069
 config ARM_ERRATA_833471
        bool
 
+config ARM_ERRATA_845369
+       bool
+
 config ARM_ERRATA_852421
        bool
 
@@ -308,6 +327,7 @@ config TARGET_GPLUGD
 config ARCH_DAVINCI
        bool "TI DaVinci"
        select CPU_ARM926EJS
+       imply CMD_SAVES
        help
          Support for TI's DaVinci platform.
 
@@ -337,17 +357,6 @@ config TARGET_WORK_92105
        select CPU_ARM926EJS
        select SUPPORT_SPL
 
-config TARGET_MX25PDK
-       bool "Support mx25pdk"
-       select BOARD_LATE_INIT
-       select CPU_ARM926EJS
-       select BOARD_EARLY_INIT_F
-
-config TARGET_ZMX25
-       bool "Support zmx25"
-       select BOARD_LATE_INIT
-       select CPU_ARM926EJS
-
 config TARGET_APF27
        bool "Support apf27"
        select CPU_ARM926EJS
@@ -409,21 +418,25 @@ config TARGET_SPEAR300
        bool "Support spear300"
        select CPU_ARM926EJS
        select BOARD_EARLY_INIT_F
+       imply CMD_SAVES
 
 config TARGET_SPEAR310
        bool "Support spear310"
        select CPU_ARM926EJS
        select BOARD_EARLY_INIT_F
+       imply CMD_SAVES
 
 config TARGET_SPEAR320
        bool "Support spear320"
        select CPU_ARM926EJS
        select BOARD_EARLY_INIT_F
+       imply CMD_SAVES
 
 config TARGET_SPEAR600
        bool "Support spear600"
        select CPU_ARM926EJS
        select BOARD_EARLY_INIT_F
+       imply CMD_SAVES
 
 config TARGET_STV0991
        bool "Support stv0991"
@@ -522,6 +535,9 @@ config TARGET_BCMCYGNUS
        imply CMD_HASH
        imply FAT_WRITE
        imply HASH_VERIFY
+       imply NETDEVICES
+       imply BCM_SF2_ETH
+       imply BCM_SF2_ETH_GMAC
 
 config TARGET_BCMNSP
        bool "Support bcmnsp"
@@ -569,12 +585,15 @@ config ARCH_KEYSTONE
        select SUPPORT_SPL
        select SYS_THUMB_BUILD
        select CMD_POWEROFF
+       imply CMD_MTDPARTS
        imply FIT
+       imply CMD_SAVES
 
 config ARCH_OMAP2PLUS
        bool "TI OMAP2+"
        select CPU_V7
        select SPL_BOARD_INIT if SPL
+       select SPL_STACK_R if SPL
        select SUPPORT_SPL
        imply FIT
 
@@ -585,6 +604,10 @@ config ARCH_MESON
          targeted at media players and tablet computers. We currently
          support the S905 (GXBaby) 64-bit SoC.
 
+config ARCH_MX25
+       bool "NXP MX25"
+       select CPU_ARM926EJS
+
 config ARCH_MX7ULP
         bool "NXP MX7ULP"
         select CPU_V7
@@ -607,11 +630,24 @@ config ARCH_MX6
        select SYS_FSL_SEC_LE
        select SYS_THUMB_BUILD if SPL
 
+if ARCH_MX6
+config SPL_LDSCRIPT
+        default "arch/arm/mach-omap2/u-boot-spl.lds"
+endif
+
 config ARCH_MX5
        bool "Freescale MX5"
        select CPU_V7
        select BOARD_EARLY_INIT_F
 
+config ARCH_QEMU
+       bool "QEMU Virtual Platform"
+       select CPU_V7
+       select ARCH_SUPPORT_PSCI
+       select DM
+       select DM_SERIAL
+       select OF_CONTROL
+
 config ARCH_RMOBILE
        bool "Renesas ARM SoCs"
        select DM
@@ -649,11 +685,13 @@ config ARCH_SOCFPGA
        select ARCH_MISC_INIT
        select SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
        select SYS_THUMB_BUILD
+       imply CMD_MTDPARTS
        imply CRC32_VERIFY
        imply FAT_WRITE
 
 config ARCH_SUNXI
        bool "Support sunxi (Allwinner) SoCs"
+       select BINMAN
        select CMD_GPIO
        select CMD_MMC if MMC
        select CMD_USB if DISTRO_DEFAULTS
@@ -670,10 +708,12 @@ config ARCH_SUNXI
        select SPL_SYS_MALLOC_SIMPLE if SPL
        select SYS_NS16550
        select SPL_SYS_THUMB_BUILD if !ARM64
+       select SYS_THUMB_BUILD if !ARM64
        select USB if DISTRO_DEFAULTS
        select USB_STORAGE if DISTRO_DEFAULTS
        select USB_KEYBOARD if DISTRO_DEFAULTS
        select USE_TINY_PRINTF
+       imply CMD_GPT
        imply FAT_WRITE
        imply PRE_CONSOLE_BUFFER
        imply SPL_GPIO_SUPPORT
@@ -683,6 +723,7 @@ config ARCH_SUNXI
        imply SPL_MMC_SUPPORT if MMC
        imply SPL_POWER_SUPPORT
        imply SPL_SERIAL_SUPPORT
+       imply USB_GADGET
 
 config TARGET_TS4600
        bool "Support TS4600"
@@ -693,9 +734,11 @@ config ARCH_VF610
        bool "Freescale Vybrid"
        select CPU_V7
        select SYS_FSL_ERRATUM_ESDHC111
+       imply CMD_MTDPARTS
+       imply NAND
 
 config ARCH_ZYNQ
-       bool "Xilinx Zynq Platform"
+       bool "Xilinx Zynq based platform"
        select BOARD_LATE_INIT
        select CPU_V7
        select SUPPORT_SPL
@@ -707,7 +750,6 @@ config ARCH_ZYNQ
        select DM_GPIO
        select SPL_DM if SPL
        select DM_MMC
-       select DM_MMC_OPS
        select DM_SPI
        select DM_SERIAL
        select DM_SPI_FLASH
@@ -719,9 +761,10 @@ config ARCH_ZYNQ
        select CLK_ZYNQ
        imply CMD_CLK
        imply FAT_WRITE
+       imply CMD_SPL
 
 config ARCH_ZYNQMP
-       bool "Support Xilinx ZynqMP Platform"
+       bool "Xilinx ZynqMP based platform"
        select ARM64
        select BOARD_LATE_INIT
        select DM
@@ -730,7 +773,7 @@ config ARCH_ZYNQMP
        select SUPPORT_SPL
        select CLK
        select SPL_BOARD_INIT if SPL
-       select SPL_CLK
+       select SPL_CLK if SPL
        select DM_USB if USB
        imply FAT_WRITE
 
@@ -784,6 +827,20 @@ config TARGET_LS2080A_SIMU
          development platform that supports the QorIQ LS2080A
          Layerscape Architecture processor.
 
+config TARGET_LS1088AQDS
+       bool "Support ls1088aqds"
+       select ARCH_LS1088A
+       select ARM64
+       select ARMV8_MULTIENTRY
+       select ARCH_MISC_INIT
+       select BOARD_LATE_INIT
+       select SUPPORT_SPL
+       help
+         Support for NXP LS1088AQDS platform
+         The LS1088A Development System (QDS) is a high-performance
+         development platform that supports the QorIQ LS1088A
+         Layerscape Architecture processor.
+
 config TARGET_LS2080AQDS
        bool "Support ls2080aqds"
        select ARCH_LS2080A
@@ -792,6 +849,8 @@ config TARGET_LS2080AQDS
        select BOARD_LATE_INIT
        select SUPPORT_SPL
        select ARCH_MISC_INIT
+       imply SCSI
+       imply SCSI_AHCI
        help
          Support for Freescale LS2080AQDS platform
          The LS2080A Development System (QDS) is a high-performance
@@ -806,6 +865,8 @@ config TARGET_LS2080ARDB
        select BOARD_LATE_INIT
        select SUPPORT_SPL
        select ARCH_MISC_INIT
+       imply SCSI
+       imply SCSI_AHCI
        help
          Support for Freescale LS2080ARDB platform.
          The LS2080A Reference design board (RDB) is a high-performance
@@ -837,6 +898,19 @@ config TARGET_HIKEY
          Support for HiKey 96boards platform. It features a HI6220
          SoC, with 8xA53 CPU, mali450 gpu, and 1GB RAM.
 
+config TARGET_POPLAR
+       bool "Support Poplar 96boards Enterprise Edition Platform"
+       select ARM64
+       select DM
+       select OF_CONTROL
+       select DM_SERIAL
+       select DM_USB
+         help
+         Support for Poplar 96boards EE platform. It features a HI3798cv200
+         SoC, with 4xA53 CPU, 1GB RAM and the high performance Mali T720 GPU
+         making it capable of running any commercial set-top solution based on
+         Linux or Android.
+
 config TARGET_LS1012AQDS
        bool "Support ls1012aqds"
        select ARCH_LS1012A
@@ -853,6 +927,8 @@ config TARGET_LS1012ARDB
        select ARCH_LS1012A
        select ARM64
        select BOARD_LATE_INIT
+       imply SCSI
+       imply SCSI_AHCI
        help
          Support for Freescale LS1012ARDB platform.
          The LS1012A Reference design board (RDB) is a high-performance
@@ -869,6 +945,20 @@ config TARGET_LS1012AFRDM
          development platform that supports the QorIQ LS1012A
          Layerscape Architecture processor.
 
+config TARGET_LS1088ARDB
+       bool "Support ls1088ardb"
+       select ARCH_LS1088A
+       select ARM64
+       select ARMV8_MULTIENTRY
+       select ARCH_MISC_INIT
+       select BOARD_LATE_INIT
+       select SUPPORT_SPL
+       help
+         Support for NXP LS1088ARDB platform.
+         The LS1088A Reference design board (RDB) is a high-performance
+         development platform that supports the QorIQ LS1088A
+         Layerscape Architecture processor.
+
 config TARGET_LS1021AQDS
        bool "Support ls1021aqds"
        select BOARD_LATE_INIT
@@ -881,6 +971,7 @@ config TARGET_LS1021AQDS
        select LS1_DEEP_SLEEP
        select SYS_FSL_DDR
        select BOARD_EARLY_INIT_F
+       imply SCSI
 
 config TARGET_LS1021ATWR
        bool "Support ls1021atwr"
@@ -893,6 +984,7 @@ config TARGET_LS1021ATWR
        select ARCH_SUPPORT_PSCI
        select LS1_DEEP_SLEEP
        select BOARD_EARLY_INIT_F
+       imply SCSI
 
 config TARGET_LS1021AIOT
        bool "Support ls1021aiot"
@@ -903,6 +995,7 @@ config TARGET_LS1021AIOT
        select SUPPORT_SPL
        select ARCH_LS1021A
        select ARCH_SUPPORT_PSCI
+       imply SCSI
        help
          Support for Freescale LS1021AIOT platform.
          The LS1021A Freescale board (IOT) is a high-performance
@@ -917,6 +1010,7 @@ config TARGET_LS1043AQDS
        select BOARD_LATE_INIT
        select SUPPORT_SPL
        select BOARD_EARLY_INIT_F
+       imply SCSI
        help
          Support for Freescale LS1043AQDS platform.
 
@@ -928,6 +1022,7 @@ config TARGET_LS1043ARDB
        select BOARD_LATE_INIT
        select SUPPORT_SPL
        select BOARD_EARLY_INIT_F
+       imply SCSI
        help
          Support for Freescale LS1043ARDB platform.
 
@@ -940,6 +1035,7 @@ config TARGET_LS1046AQDS
        select SUPPORT_SPL
        select DM_SPI_FLASH if DM_SPI
        select BOARD_EARLY_INIT_F
+       imply SCSI
        help
          Support for Freescale LS1046AQDS platform.
          The LS1046A Development System (QDS) is a high-performance
@@ -956,6 +1052,7 @@ config TARGET_LS1046ARDB
        select DM_SPI_FLASH if DM_SPI
        select POWER_MC34VR500
        select BOARD_EARLY_INIT_F
+       imply SCSI
        help
          Support for Freescale LS1046ARDB platform.
          The LS1046A Reference Design Board (RDB) is a high-performance
@@ -977,7 +1074,6 @@ config TARGET_COLIBRI_PXA270
 config ARCH_UNIPHIER
        bool "Socionext UniPhier SoCs"
        select BOARD_LATE_INIT
-       select CLK_UNIPHIER
        select DM
        select DM_GPIO
        select DM_I2C
@@ -1031,14 +1127,21 @@ config ARCH_ROCKCHIP
        select DM_GPIO
        select DM_I2C
        select DM_MMC
-       select DM_MMC_OPS
        select DM_SERIAL
        select DM_SPI
        select DM_SPI_FLASH
        select DM_USB if USB
        select DM_PWM
        select DM_REGULATOR
+       select ENABLE_ARM_SOC_BOOT0_HOOK
+       imply CMD_FASTBOOT
+       imply FASTBOOT
        imply FAT_WRITE
+       imply USB_FUNCTION_FASTBOOT
+       imply SPL_SYSRESET
+       imply TPL_SYSRESET
+       imply ADC
+       imply SARADC_ROCKCHIP
 
 config TARGET_THUNDERX_88XX
        bool "Support ThunderX 88xx"
@@ -1075,13 +1178,15 @@ source "arch/arm/mach-mvebu/Kconfig"
 
 source "arch/arm/cpu/armv7/ls102xa/Kconfig"
 
-source "arch/arm/cpu/armv7/mx7ulp/Kconfig"
+source "arch/arm/mach-imx/mx2/Kconfig"
+
+source "arch/arm/mach-imx/mx7ulp/Kconfig"
 
-source "arch/arm/cpu/armv7/mx7/Kconfig"
+source "arch/arm/mach-imx/mx7/Kconfig"
 
-source "arch/arm/cpu/armv7/mx6/Kconfig"
+source "arch/arm/mach-imx/mx6/Kconfig"
 
-source "arch/arm/cpu/armv7/mx5/Kconfig"
+source "arch/arm/mach-imx/mx5/Kconfig"
 
 source "arch/arm/mach-omap2/Kconfig"
 
@@ -1093,6 +1198,8 @@ source "arch/arm/mach-rmobile/Kconfig"
 
 source "arch/arm/mach-meson/Kconfig"
 
+source "arch/arm/mach-qemu/Kconfig"
+
 source "arch/arm/mach-rockchip/Kconfig"
 
 source "arch/arm/mach-s5pc1xx/Kconfig"
@@ -1121,7 +1228,7 @@ source "arch/arm/cpu/armv8/zynqmp/Kconfig"
 
 source "arch/arm/cpu/armv8/Kconfig"
 
-source "arch/arm/imx-common/Kconfig"
+source "arch/arm/mach-imx/Kconfig"
 
 source "board/aries/m28evk/Kconfig"
 source "board/bosch/shc/Kconfig"
@@ -1143,6 +1250,7 @@ source "board/creative/xfi3/Kconfig"
 source "board/freescale/ls2080a/Kconfig"
 source "board/freescale/ls2080aqds/Kconfig"
 source "board/freescale/ls2080ardb/Kconfig"
+source "board/freescale/ls1088a/Kconfig"
 source "board/freescale/ls1021aqds/Kconfig"
 source "board/freescale/ls1043aqds/Kconfig"
 source "board/freescale/ls1021atwr/Kconfig"
@@ -1154,7 +1262,6 @@ source "board/freescale/ls1012aqds/Kconfig"
 source "board/freescale/ls1012ardb/Kconfig"
 source "board/freescale/ls1012afrdm/Kconfig"
 source "board/freescale/mx23evk/Kconfig"
-source "board/freescale/mx25pdk/Kconfig"
 source "board/freescale/mx28evk/Kconfig"
 source "board/freescale/mx31ads/Kconfig"
 source "board/freescale/mx31pdk/Kconfig"
@@ -1165,6 +1272,7 @@ source "board/grinn/chiliboard/Kconfig"
 source "board/gumstix/pepper/Kconfig"
 source "board/h2200/Kconfig"
 source "board/hisilicon/hikey/Kconfig"
+source "board/hisilicon/poplar/Kconfig"
 source "board/imx31_phycore/Kconfig"
 source "board/isee/igep003x/Kconfig"
 source "board/olimex/mx23_olinuxino/Kconfig"
@@ -1179,7 +1287,6 @@ source "board/spear/spear320/Kconfig"
 source "board/spear/spear600/Kconfig"
 source "board/spear/x600/Kconfig"
 source "board/st/stv0991/Kconfig"
-source "board/syteco/zmx25/Kconfig"
 source "board/tcl/sl50/Kconfig"
 source "board/birdland/bav335x/Kconfig"
 source "board/timll/devkit3250/Kconfig"
@@ -1193,3 +1300,10 @@ source "board/zipitz2/Kconfig"
 source "arch/arm/Kconfig.debug"
 
 endmenu
+
+config SPL_LDSCRIPT
+        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
+        default "arch/arm/cpu/arm1136/u-boot-spl.lds" if CPU_ARM1136
+       default "arch/arm/cpu/armv8/u-boot-spl.lds" if ARM64
+
+