mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-05 20:54:31 +00:00
8f9696510a
Make LTO available for ARM architecture. Signed-off-by: Marek Behún <marek.behun@nic.cz> Reviewed-by: Simon Glass <sjg@chromium.org>
341 lines
7.2 KiB
Text
341 lines
7.2 KiB
Text
config CREATE_ARCH_SYMLINK
|
|
bool
|
|
|
|
config HAVE_ARCH_IOREMAP
|
|
bool
|
|
|
|
config NEEDS_MANUAL_RELOC
|
|
bool
|
|
|
|
config LINKER_LIST_ALIGN
|
|
int
|
|
default 32 if SANDBOX
|
|
default 8 if ARM64 || X86
|
|
default 4
|
|
help
|
|
Force the each linker list to be aligned to this boundary. This
|
|
is required if ll_entry_get() is used, since otherwise the linker
|
|
may add padding into the table, thus breaking it.
|
|
See linker_lists.rst for full details.
|
|
|
|
choice
|
|
prompt "Architecture select"
|
|
default SANDBOX
|
|
|
|
config ARC
|
|
bool "ARC architecture"
|
|
select ARC_TIMER
|
|
select CLK
|
|
select DM
|
|
select HAVE_PRIVATE_LIBGCC
|
|
select SUPPORT_OF_CONTROL
|
|
select TIMER
|
|
|
|
config ARM
|
|
bool "ARM architecture"
|
|
select ARCH_SUPPORTS_LTO
|
|
select CREATE_ARCH_SYMLINK
|
|
select HAVE_PRIVATE_LIBGCC if !ARM64
|
|
select SUPPORT_OF_CONTROL
|
|
|
|
config M68K
|
|
bool "M68000 architecture"
|
|
select HAVE_PRIVATE_LIBGCC
|
|
select NEEDS_MANUAL_RELOC
|
|
select SYS_BOOT_GET_CMDLINE
|
|
select SYS_BOOT_GET_KBD
|
|
select SUPPORT_OF_CONTROL
|
|
|
|
config MICROBLAZE
|
|
bool "MicroBlaze architecture"
|
|
select NEEDS_MANUAL_RELOC
|
|
select SUPPORT_OF_CONTROL
|
|
imply CMD_IRQ
|
|
|
|
config MIPS
|
|
bool "MIPS architecture"
|
|
select HAVE_ARCH_IOREMAP
|
|
select HAVE_PRIVATE_LIBGCC
|
|
select SUPPORT_OF_CONTROL
|
|
|
|
config NDS32
|
|
bool "NDS32 architecture"
|
|
select SUPPORT_OF_CONTROL
|
|
|
|
config NIOS2
|
|
bool "Nios II architecture"
|
|
select CPU
|
|
select DM
|
|
select OF_CONTROL
|
|
select SUPPORT_OF_CONTROL
|
|
imply CMD_DM
|
|
|
|
config PPC
|
|
bool "PowerPC architecture"
|
|
select HAVE_PRIVATE_LIBGCC
|
|
select SUPPORT_OF_CONTROL
|
|
select SYS_BOOT_GET_CMDLINE
|
|
select SYS_BOOT_GET_KBD
|
|
|
|
config RISCV
|
|
bool "RISC-V architecture"
|
|
select CREATE_ARCH_SYMLINK
|
|
select SUPPORT_OF_CONTROL
|
|
select OF_CONTROL
|
|
select DM
|
|
imply DM_SERIAL
|
|
imply DM_ETH
|
|
imply DM_MMC
|
|
imply DM_SPI
|
|
imply DM_SPI_FLASH
|
|
imply BLK
|
|
imply CLK
|
|
imply MTD
|
|
imply TIMER
|
|
imply CMD_DM
|
|
imply SPL_DM
|
|
imply SPL_OF_CONTROL
|
|
imply SPL_LIBCOMMON_SUPPORT
|
|
imply SPL_LIBGENERIC_SUPPORT
|
|
imply SPL_SERIAL_SUPPORT
|
|
imply SPL_TIMER
|
|
|
|
config SANDBOX
|
|
bool "Sandbox"
|
|
select ARCH_SUPPORTS_LTO
|
|
select BOARD_LATE_INIT
|
|
select BZIP2
|
|
select CMD_POWEROFF
|
|
select DM
|
|
select DM_GPIO
|
|
select DM_I2C
|
|
select DM_KEYBOARD
|
|
select DM_MMC
|
|
select DM_SERIAL
|
|
select DM_SPI
|
|
select DM_SPI_FLASH
|
|
select GZIP_COMPRESSED
|
|
select HAVE_BLOCK_DEVICE
|
|
select LZO
|
|
select OF_BOARD_SETUP
|
|
select PCI_ENDPOINT
|
|
select SPI
|
|
select SUPPORT_OF_CONTROL
|
|
select SYSRESET_CMD_POWEROFF
|
|
select IRQ
|
|
select SUPPORT_EXTENSION_SCAN
|
|
imply BITREVERSE
|
|
select BLOBLIST
|
|
imply LTO
|
|
imply CMD_DM
|
|
imply CMD_EXCEPTION
|
|
imply CMD_GETTIME
|
|
imply CMD_HASH
|
|
imply CMD_IO
|
|
imply CMD_IOTRACE
|
|
imply CMD_LZMADEC
|
|
imply CMD_SATA
|
|
imply CMD_SF
|
|
imply CMD_SF_TEST
|
|
imply CRC32_VERIFY
|
|
imply FAT_WRITE
|
|
imply FIRMWARE
|
|
imply HASH_VERIFY
|
|
imply LZMA
|
|
imply SCSI
|
|
imply TEE
|
|
imply AVB_VERIFY
|
|
imply LIBAVB
|
|
imply CMD_AVB
|
|
imply SCP03
|
|
imply CMD_SCP03
|
|
imply UDP_FUNCTION_FASTBOOT
|
|
imply VIRTIO_MMIO
|
|
imply VIRTIO_PCI
|
|
imply VIRTIO_SANDBOX
|
|
imply VIRTIO_BLK
|
|
imply VIRTIO_NET
|
|
imply DM_SOUND
|
|
imply PCI_SANDBOX_EP
|
|
imply PCH
|
|
imply PHYLIB
|
|
imply DM_MDIO
|
|
imply DM_MDIO_MUX
|
|
imply ACPI_PMC
|
|
imply ACPI_PMC_SANDBOX
|
|
imply CMD_PMC
|
|
imply CMD_CLONE
|
|
imply SILENT_CONSOLE
|
|
imply BOOTARGS_SUBST
|
|
imply PHY_FIXED
|
|
imply DM_DSA
|
|
imply CMD_EXTENSION
|
|
|
|
config SH
|
|
bool "SuperH architecture"
|
|
select HAVE_PRIVATE_LIBGCC
|
|
select SUPPORT_OF_CONTROL
|
|
|
|
config X86
|
|
bool "x86 architecture"
|
|
select SUPPORT_SPL
|
|
select SUPPORT_TPL
|
|
select CREATE_ARCH_SYMLINK
|
|
select DM
|
|
select DM_PCI
|
|
select HAVE_ARCH_IOMAP
|
|
select HAVE_PRIVATE_LIBGCC
|
|
select OF_CONTROL
|
|
select PCI
|
|
select SUPPORT_OF_CONTROL
|
|
select TIMER
|
|
select USE_PRIVATE_LIBGCC
|
|
select X86_TSC_TIMER
|
|
select IRQ
|
|
imply HAS_ROM if X86_RESET_VECTOR
|
|
imply BLK
|
|
imply CMD_DM
|
|
imply CMD_FPGA_LOADMK
|
|
imply CMD_GETTIME
|
|
imply CMD_IO
|
|
imply CMD_IRQ
|
|
imply CMD_PCI
|
|
imply CMD_SF
|
|
imply CMD_SF_TEST
|
|
imply CMD_ZBOOT
|
|
imply DM_ETH
|
|
imply DM_GPIO
|
|
imply DM_KEYBOARD
|
|
imply DM_MMC
|
|
imply DM_RTC
|
|
imply DM_SCSI
|
|
imply DM_SERIAL
|
|
imply DM_SPI
|
|
imply DM_SPI_FLASH
|
|
imply DM_USB
|
|
imply DM_VIDEO
|
|
imply SYSRESET
|
|
imply SPL_SYSRESET
|
|
imply SYSRESET_X86
|
|
imply USB_ETHER_ASIX
|
|
imply USB_ETHER_SMSC95XX
|
|
imply USB_HOST_ETHER
|
|
imply PCH
|
|
imply RTC_MC146818
|
|
imply ACPIGEN if !QEMU
|
|
imply SYSINFO if GENERATE_SMBIOS_TABLE
|
|
imply SYSINFO_SMBIOS if GENERATE_SMBIOS_TABLE
|
|
|
|
# Thing to enable for when SPL/TPL are enabled: SPL
|
|
imply SPL_DM
|
|
imply SPL_OF_LIBFDT
|
|
imply SPL_DRIVERS_MISC_SUPPORT
|
|
imply SPL_GPIO_SUPPORT
|
|
imply SPL_PINCTRL
|
|
imply SPL_LIBCOMMON_SUPPORT
|
|
imply SPL_LIBGENERIC_SUPPORT
|
|
imply SPL_SERIAL_SUPPORT
|
|
imply SPL_SPI_FLASH_SUPPORT
|
|
imply SPL_SPI_SUPPORT
|
|
imply SPL_OF_CONTROL
|
|
imply SPL_TIMER
|
|
imply SPL_REGMAP
|
|
imply SPL_SYSCON
|
|
# TPL
|
|
imply TPL_DM
|
|
imply TPL_DRIVERS_MISC_SUPPORT
|
|
imply TPL_GPIO_SUPPORT
|
|
imply TPL_PINCTRL
|
|
imply TPL_LIBCOMMON_SUPPORT
|
|
imply TPL_LIBGENERIC_SUPPORT
|
|
imply TPL_SERIAL_SUPPORT
|
|
imply TPL_OF_CONTROL
|
|
imply TPL_TIMER
|
|
imply TPL_REGMAP
|
|
imply TPL_SYSCON
|
|
|
|
config XTENSA
|
|
bool "Xtensa architecture"
|
|
select CREATE_ARCH_SYMLINK
|
|
select SUPPORT_OF_CONTROL
|
|
|
|
endchoice
|
|
|
|
config SYS_ARCH
|
|
string
|
|
help
|
|
This option should contain the architecture name to build the
|
|
appropriate arch/<CONFIG_SYS_ARCH> directory.
|
|
All the architectures should specify this option correctly.
|
|
|
|
config SYS_CPU
|
|
string
|
|
help
|
|
This option should contain the CPU name to build the correct
|
|
arch/<CONFIG_SYS_ARCH>/cpu/<CONFIG_SYS_CPU> directory.
|
|
|
|
This is optional. For those targets without the CPU directory,
|
|
leave this option empty.
|
|
|
|
config SYS_SOC
|
|
string
|
|
help
|
|
This option should contain the SoC name to build the directory
|
|
arch/<CONFIG_SYS_ARCH>/cpu/<CONFIG_SYS_CPU>/<CONFIG_SYS_SOC>.
|
|
|
|
This is optional. For those targets without the SoC directory,
|
|
leave this option empty.
|
|
|
|
config SYS_VENDOR
|
|
string
|
|
help
|
|
This option should contain the vendor name of the target board.
|
|
If it is set and
|
|
board/<CONFIG_SYS_VENDOR>/common/Makefile exists, the vendor common
|
|
directory is compiled.
|
|
If CONFIG_SYS_BOARD is also set, the sources under
|
|
board/<CONFIG_SYS_VENDOR>/<CONFIG_SYS_BOARD> directory are compiled.
|
|
|
|
This is optional. For those targets without the vendor directory,
|
|
leave this option empty.
|
|
|
|
config SYS_BOARD
|
|
string
|
|
help
|
|
This option should contain the name of the target board.
|
|
If it is set, either board/<CONFIG_SYS_VENDOR>/<CONFIG_SYS_BOARD>
|
|
or board/<CONFIG_SYS_BOARD> directory is compiled depending on
|
|
whether CONFIG_SYS_VENDOR is set or not.
|
|
|
|
This is optional. For those targets without the board directory,
|
|
leave this option empty.
|
|
|
|
config SYS_CONFIG_NAME
|
|
string
|
|
help
|
|
This option should contain the base name of board header file.
|
|
The header file include/configs/<CONFIG_SYS_CONFIG_NAME>.h
|
|
should be included from include/config.h.
|
|
|
|
config SYS_DISABLE_DCACHE_OPS
|
|
bool
|
|
help
|
|
This option disables dcache flush and dcache invalidation
|
|
operations. For example, on coherent systems where cache
|
|
operatios are not required, enable this option to avoid them.
|
|
Note that, its up to the individual architectures to implement
|
|
this functionality.
|
|
|
|
source "arch/arc/Kconfig"
|
|
source "arch/arm/Kconfig"
|
|
source "arch/m68k/Kconfig"
|
|
source "arch/microblaze/Kconfig"
|
|
source "arch/mips/Kconfig"
|
|
source "arch/nds32/Kconfig"
|
|
source "arch/nios2/Kconfig"
|
|
source "arch/powerpc/Kconfig"
|
|
source "arch/sandbox/Kconfig"
|
|
source "arch/sh/Kconfig"
|
|
source "arch/x86/Kconfig"
|
|
source "arch/xtensa/Kconfig"
|
|
source "arch/riscv/Kconfig"
|