| if CPU_V7A |
| |
| config CPU_V7_HAS_NONSEC |
| bool |
| |
| config CPU_V7_HAS_VIRT |
| bool |
| |
| config ARCH_SUPPORT_PSCI |
| bool |
| |
| config ARMV7_NONSEC |
| bool "Enable support for booting in non-secure mode" if EXPERT |
| depends on CPU_V7_HAS_NONSEC |
| default y |
| ---help--- |
| Say Y here to enable support for booting in non-secure / SVC mode. |
| |
| config ARMV7_BOOT_SEC_DEFAULT |
| bool "Boot in secure mode by default" if EXPERT |
| depends on ARMV7_NONSEC |
| default y if ARCH_TEGRA |
| ---help--- |
| Say Y here to boot in secure mode by default even if non-secure mode |
| is supported. This option is useful to boot kernels which do not |
| suppport booting in non-secure mode. Only set this if you need it. |
| This can be overridden at run-time by setting the bootm_boot_mode env. |
| variable to "sec" or "nonsec". |
| |
| config HAS_ARMV7_SECURE_BASE |
| bool "Enable support for a ahardware secure memory area" |
| default y if ARCH_LS1021A || ARCH_MX7 || ARCH_MX7ULP || ARCH_STM32MP \ |
| || MACH_SUN6I || MACH_SUN7I || MACH_SUN8I || TEGRA124 |
| |
| config ARMV7_SECURE_BASE |
| hex "Base address for secure mode memory" |
| depends on HAS_ARMV7_SECURE_BASE |
| default 0xfff00000 if TEGRA124 |
| default 0x2ffc0000 if ARCH_STM32MP |
| default 0x2f000000 if ARCH_MX7ULP |
| default 0x10010000 if ARCH_LS1021A |
| default 0x00900000 if ARCH_MX7 |
| default 0x00044000 if MACH_SUN8I |
| default 0x00020000 if MACH_SUN6I || MACH_SUN7I |
| |
| config ARMV7_SECURE_RESERVE_SIZE |
| hex |
| depends on TEGRA124 && HAS_ARMV7_SECURE_BASE |
| default 0x100000 |
| help |
| Reserve top 1M for secure RAM |
| |
| config ARMV7_SECURE_MAX_SIZE |
| hex |
| depends on ARMV7_SECURE_BASE && ARCH_STM32MP || MACH_SUN6I \ |
| || MACH_SUN7I || MACH_SUN8I |
| default 0xbc00 if MACH_SUN8I && !MACH_SUN8I_H3 |
| default 0x3c00 if MACH_SUN8I && MACH_SUN8I_H3 |
| default 0x10000 |
| |
| config ARM_GIC_BASE_ADDRESS |
| hex |
| depends on ARMV7_NONSEC |
| depends on ARCH_EXYNOS5 || MACH_SUN8I_R528 |
| default 0x10480000 if ARCH_EXYNOS5 |
| default 0x03020000 if MACH_SUN8I_R528 |
| help |
| Override the GIC base address if the Arm Cortex defined |
| CBAR/PERIPHBASE system register holds the wrong value. |
| Used by the PSCI code to configure the secure side of the GIC. |
| |
| config ARMV7_VIRT |
| bool "Enable support for hardware virtualization" if EXPERT |
| depends on CPU_V7_HAS_VIRT && ARMV7_NONSEC |
| default y |
| ---help--- |
| Say Y here to boot in hypervisor (HYP) mode when booting non-secure. |
| |
| config ARMV7_PSCI |
| bool "Enable PSCI support" if EXPERT |
| depends on ARMV7_NONSEC && ARCH_SUPPORT_PSCI |
| default y |
| help |
| Say Y here to enable PSCI support. |
| |
| choice |
| prompt "Supported PSCI version" |
| depends on ARMV7_PSCI |
| default ARMV7_PSCI_0_1 if ARCH_SUNXI |
| default ARMV7_PSCI_1_0 |
| help |
| Select the supported PSCI version. |
| |
| config ARMV7_PSCI_1_0 |
| bool "PSCI V1.0" |
| |
| config ARMV7_PSCI_0_2 |
| bool "PSCI V0.2" |
| |
| config ARMV7_PSCI_0_1 |
| bool "PSCI V0.1" |
| endchoice |
| |
| config ARMV7_PSCI_NR_CPUS |
| int "Maximum supported CPUs for PSCI" |
| depends on ARMV7_NONSEC |
| default 4 |
| help |
| The maximum number of CPUs supported in the PSCI firmware. |
| It is no problem to set a larger value than the number of |
| CPUs in the actual hardware implementation. |
| |
| config ARMV7_LPAE |
| bool "Use LPAE page table format" if EXPERT |
| depends on CPU_V7A |
| default y if ARMV7_VIRT |
| ---help--- |
| Say Y here to use the long descriptor page table format. This is |
| required if U-Boot runs in HYP mode. |
| |
| config ARMV7_SET_CORTEX_SMPEN |
| bool |
| help |
| Enable the ARM Cortex ACTLR.SMP enable bit in U-Boot. |
| |
| config SPL_ARMV7_SET_CORTEX_SMPEN |
| bool |
| help |
| Enable the ARM Cortex ACTLR.SMP enable bit on SPL startup. |
| |
| endif |