Merge pull request #1575 from soby-mathew/sm/fix_cryptocell_mem
ARM platforms: Reintroduce coherent memory for BL1 and BL2
This commit is contained in:
commit
28441f9420
|
@ -111,8 +111,11 @@ void bl1_early_platform_setup(void)
|
|||
*****************************************************************************/
|
||||
void arm_bl1_plat_arch_setup(void)
|
||||
{
|
||||
#if USE_COHERENT_MEM
|
||||
/* ARM platforms dont use coherent memory in BL1 */
|
||||
#if USE_COHERENT_MEM && !ARM_CRYPTOCELL_INTEG
|
||||
/*
|
||||
* Ensure ARM platforms don't use coherent memory in BL1 unless
|
||||
* cryptocell integration is enabled.
|
||||
*/
|
||||
assert((BL_COHERENT_RAM_END - BL_COHERENT_RAM_BASE) == 0U);
|
||||
#endif
|
||||
|
||||
|
@ -122,6 +125,9 @@ void arm_bl1_plat_arch_setup(void)
|
|||
#if USE_ROMLIB
|
||||
ARM_MAP_ROMLIB_CODE,
|
||||
ARM_MAP_ROMLIB_DATA,
|
||||
#endif
|
||||
#if ARM_CRYPTOCELL_INTEG
|
||||
ARM_MAP_BL_COHERENT_RAM,
|
||||
#endif
|
||||
{0}
|
||||
};
|
||||
|
|
|
@ -237,9 +237,11 @@ void bl2_platform_setup(void)
|
|||
******************************************************************************/
|
||||
void arm_bl2_plat_arch_setup(void)
|
||||
{
|
||||
|
||||
#if USE_COHERENT_MEM
|
||||
/* Ensure ARM platforms dont use coherent memory in BL2 */
|
||||
#if USE_COHERENT_MEM && !ARM_CRYPTOCELL_INTEG
|
||||
/*
|
||||
* Ensure ARM platforms don't use coherent memory in BL2 unless
|
||||
* cryptocell integration is enabled.
|
||||
*/
|
||||
assert((BL_COHERENT_RAM_END - BL_COHERENT_RAM_BASE) == 0U);
|
||||
#endif
|
||||
|
||||
|
@ -249,6 +251,9 @@ void arm_bl2_plat_arch_setup(void)
|
|||
#if USE_ROMLIB
|
||||
ARM_MAP_ROMLIB_CODE,
|
||||
ARM_MAP_ROMLIB_DATA,
|
||||
#endif
|
||||
#if ARM_CRYPTOCELL_INTEG
|
||||
ARM_MAP_BL_COHERENT_RAM,
|
||||
#endif
|
||||
{0}
|
||||
};
|
||||
|
|
|
@ -138,6 +138,14 @@ ARM_CRYPTOCELL_INTEG := 0
|
|||
$(eval $(call assert_boolean,ARM_CRYPTOCELL_INTEG))
|
||||
$(eval $(call add_define,ARM_CRYPTOCELL_INTEG))
|
||||
|
||||
# CryptoCell integration relies on coherent buffers for passing data from
|
||||
# the AP CPU to the CryptoCell
|
||||
ifeq (${ARM_CRYPTOCELL_INTEG},1)
|
||||
ifeq (${USE_COHERENT_MEM},0)
|
||||
$(error "ARM_CRYPTOCELL_INTEG needs USE_COHERENT_MEM to be set.")
|
||||
endif
|
||||
endif
|
||||
|
||||
PLAT_INCLUDES += -Iinclude/common/tbbr \
|
||||
-Iinclude/plat/arm/common
|
||||
|
||||
|
|
Loading…
Reference in New Issue