From 3c6ec8f1220242c16b0930916e72783b85b15472 Mon Sep 17 00:00:00 2001 From: Mark Dykes Date: Wed, 22 Jan 2020 21:52:52 +0000 Subject: [PATCH] Revert "plat/arm: Add support for SEPARATE_NOBITS_REGION" This reverts commit d433bbdd459c222e5bf5ca87319807465b246d8c. Change-Id: I46c69dce704a1ce1b50452dd4d62425c4a67f7f0 --- include/plat/arm/common/arm_def.h | 12 ++---------- plat/arm/common/arm_bl31_setup.c | 13 +------------ plat/arm/common/arm_common.mk | 19 +------------------ 3 files changed, 4 insertions(+), 40 deletions(-) diff --git a/include/plat/arm/common/arm_def.h b/include/plat/arm/common/arm_def.h index 5bd53f3b5..b419c853e 100644 --- a/include/plat/arm/common/arm_def.h +++ b/include/plat/arm/common/arm_def.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015-2020, ARM Limited and Contributors. All rights reserved. + * Copyright (c) 2015-2019, ARM Limited and Contributors. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ @@ -395,21 +395,13 @@ /******************************************************************************* * BL31 specific defines. ******************************************************************************/ -#if ARM_BL31_IN_DRAM || SEPARATE_NOBITS_REGION +#if ARM_BL31_IN_DRAM /* * Put BL31 at the bottom of TZC secured DRAM */ #define BL31_BASE ARM_AP_TZC_DRAM1_BASE #define BL31_LIMIT (ARM_AP_TZC_DRAM1_BASE + \ PLAT_ARM_MAX_BL31_SIZE) -/* - * For SEPARATE_NOBITS_REGION, BL31 PROGBITS are loaded in TZC secured DRAM. - * And BL31 NOBITS are loaded in Trusted SRAM such that BL2 is overwritten. - */ -#if SEPARATE_NOBITS_REGION -#define BL31_NOBITS_BASE BL2_BASE -#define BL31_NOBITS_LIMIT BL2_LIMIT -#endif /* SEPARATE_NOBITS_REGION */ #elif (RESET_TO_BL31) /* Ensure Position Independent support (PIE) is enabled for this config.*/ # if !ENABLE_PIE diff --git a/plat/arm/common/arm_bl31_setup.c b/plat/arm/common/arm_bl31_setup.c index 7a3ca7177..939885f98 100644 --- a/plat/arm/common/arm_bl31_setup.c +++ b/plat/arm/common/arm_bl31_setup.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015-2020, ARM Limited and Contributors. All rights reserved. + * Copyright (c) 2015-2019, ARM Limited and Contributors. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ @@ -56,14 +56,6 @@ IMPORT_SYM(unsigned long, __INIT_CODE_END__, BL_INIT_CODE_END); MT_CODE | MT_SECURE) #endif -#if SEPARATE_NOBITS_REGION -#define MAP_BL31_NOBITS MAP_REGION_FLAT( \ - BL31_NOBITS_BASE, \ - BL31_NOBITS_LIMIT \ - - BL31_NOBITS_BASE, \ - MT_MEMORY | MT_RW | MT_SECURE) - -#endif /******************************************************************************* * Return a pointer to the 'entry_point_info' structure of the next image for the * security state specified. BL33 corresponds to the non-secure image type @@ -302,9 +294,6 @@ void __init arm_bl31_plat_arch_setup(void) MAP_BL31_TOTAL, #if RECLAIM_INIT_CODE MAP_BL_INIT_CODE, -#endif -#if SEPARATE_NOBITS_REGION - MAP_BL31_NOBITS, #endif ARM_MAP_BL_RO, #if USE_ROMLIB diff --git a/plat/arm/common/arm_common.mk b/plat/arm/common/arm_common.mk index ab33e1ded..9d4f05e9e 100644 --- a/plat/arm/common/arm_common.mk +++ b/plat/arm/common/arm_common.mk @@ -1,5 +1,5 @@ # -# Copyright (c) 2015-2020, ARM Limited and Contributors. All rights reserved. +# Copyright (c) 2015-2019, ARM Limited and Contributors. All rights reserved. # # SPDX-License-Identifier: BSD-3-Clause # @@ -125,23 +125,6 @@ ENABLE_PMF := 1 # mapping the former as executable and the latter as execute-never. SEPARATE_CODE_AND_RODATA := 1 -# On ARM platforms, disable SEPARATE_NOBITS_REGION by default. Both PROGBITS -# and NOBITS sections of BL31 image are adjacent to each other and loaded -# into Trusted SRAM. -SEPARATE_NOBITS_REGION := 0 - -# In order to support SEPARATE_NOBITS_REGION for Arm platforms, we need to load -# BL31 PROGBITS into secure DRAM space and BL31 NOBITS into SRAM. Hence mandate -# the build to require that ARM_BL31_IN_DRAM is enabled as well. -ifeq ($(SEPARATE_NOBITS_REGION),1) - ifneq ($(ARM_BL31_IN_DRAM),1) - $(error For SEPARATE_NOBITS_REGION, ARM_BL31_IN_DRAM must be enabled) - endif - ifneq ($(RECLAIM_INIT_CODE),0) - $(error For SEPARATE_NOBITS_REGION, RECLAIM_INIT_CODE cannot be supported) - endif -endif - # Disable ARM Cryptocell by default ARM_CRYPTOCELL_INTEG := 0 $(eval $(call assert_boolean,ARM_CRYPTOCELL_INTEG))