Commit b2c9687f authored by danh-arm's avatar danh-arm
Browse files

Merge pull request #586 from antonio-nino-diaz-arm/an/spd-bl32

Remove BL32_BASE when building without SPD for FVP
parents 978e6820 81d139d5
...@@ -414,6 +414,7 @@ $(eval $(call assert_boolean,PL011_GENERIC_UART)) ...@@ -414,6 +414,7 @@ $(eval $(call assert_boolean,PL011_GENERIC_UART))
################################################################################ ################################################################################
$(eval $(call add_define,PLAT_${PLAT})) $(eval $(call add_define,PLAT_${PLAT}))
$(eval $(call add_define,SPD_${SPD}))
$(eval $(call add_define,NS_TIMER_SWITCH)) $(eval $(call add_define,NS_TIMER_SWITCH))
$(eval $(call add_define,RESET_TO_BL31)) $(eval $(call add_define,RESET_TO_BL31))
$(eval $(call add_define,CTX_INCLUDE_FPREGS)) $(eval $(call add_define,CTX_INCLUDE_FPREGS))
......
...@@ -321,6 +321,10 @@ ...@@ -321,6 +321,10 @@
# error "Unsupported ARM_TSP_RAM_LOCATION_ID value" # error "Unsupported ARM_TSP_RAM_LOCATION_ID value"
#endif #endif
#ifdef SPD_none
#undef BL32_BASE
#endif /* SPD_none */
/******************************************************************************* /*******************************************************************************
* FWU Images: NS_BL1U, BL2U & NS_BL2U defines. * FWU Images: NS_BL1U, BL2U & NS_BL2U defines.
******************************************************************************/ ******************************************************************************/
......
...@@ -147,14 +147,14 @@ bl31_params_t *bl2_plat_get_bl31_params(void) ...@@ -147,14 +147,14 @@ bl31_params_t *bl2_plat_get_bl31_params(void)
VERSION_1, 0); VERSION_1, 0);
/* Fill BL32 related information if it exists */ /* Fill BL32 related information if it exists */
#if BL32_BASE #ifdef BL32_BASE
bl2_to_bl31_params->bl32_ep_info = &bl31_params_mem.bl32_ep_info; bl2_to_bl31_params->bl32_ep_info = &bl31_params_mem.bl32_ep_info;
SET_PARAM_HEAD(bl2_to_bl31_params->bl32_ep_info, PARAM_EP, SET_PARAM_HEAD(bl2_to_bl31_params->bl32_ep_info, PARAM_EP,
VERSION_1, 0); VERSION_1, 0);
bl2_to_bl31_params->bl32_image_info = &bl31_params_mem.bl32_image_info; bl2_to_bl31_params->bl32_image_info = &bl31_params_mem.bl32_image_info;
SET_PARAM_HEAD(bl2_to_bl31_params->bl32_image_info, PARAM_IMAGE_BINARY, SET_PARAM_HEAD(bl2_to_bl31_params->bl32_image_info, PARAM_IMAGE_BINARY,
VERSION_1, 0); VERSION_1, 0);
#endif #endif /* BL32_BASE */
/* Fill BL33 related information */ /* Fill BL33 related information */
bl2_to_bl31_params->bl33_ep_info = &bl31_params_mem.bl33_ep_info; bl2_to_bl31_params->bl33_ep_info = &bl31_params_mem.bl33_ep_info;
...@@ -280,6 +280,7 @@ void bl2_plat_set_bl31_ep_info(image_info_t *bl31_image_info, ...@@ -280,6 +280,7 @@ void bl2_plat_set_bl31_ep_info(image_info_t *bl31_image_info,
* the entrypoint of BL32 and set SPSR and security state. * the entrypoint of BL32 and set SPSR and security state.
* On ARM standard platforms we only set the security state of the entrypoint * On ARM standard platforms we only set the security state of the entrypoint
******************************************************************************/ ******************************************************************************/
#ifdef BL32_BASE
void bl2_plat_set_bl32_ep_info(image_info_t *bl32_image_info, void bl2_plat_set_bl32_ep_info(image_info_t *bl32_image_info,
entry_point_info_t *bl32_ep_info) entry_point_info_t *bl32_ep_info)
{ {
...@@ -287,20 +288,6 @@ void bl2_plat_set_bl32_ep_info(image_info_t *bl32_image_info, ...@@ -287,20 +288,6 @@ void bl2_plat_set_bl32_ep_info(image_info_t *bl32_image_info,
bl32_ep_info->spsr = arm_get_spsr_for_bl32_entry(); bl32_ep_info->spsr = arm_get_spsr_for_bl32_entry();
} }
/*******************************************************************************
* Before calling this function BL33 is loaded in memory and its entrypoint
* is set by load_image. This is a placeholder for the platform to change
* the entrypoint of BL33 and set SPSR and security state.
* On ARM standard platforms we only set the security state of the entrypoint
******************************************************************************/
void bl2_plat_set_bl33_ep_info(image_info_t *image,
entry_point_info_t *bl33_ep_info)
{
SET_SECURITY_STATE(bl33_ep_info->h.attr, NON_SECURE);
bl33_ep_info->spsr = arm_get_spsr_for_bl33_entry();
}
/******************************************************************************* /*******************************************************************************
* Populate the extents of memory available for loading BL32 * Populate the extents of memory available for loading BL32
******************************************************************************/ ******************************************************************************/
...@@ -316,7 +303,20 @@ void bl2_plat_get_bl32_meminfo(meminfo_t *bl32_meminfo) ...@@ -316,7 +303,20 @@ void bl2_plat_get_bl32_meminfo(meminfo_t *bl32_meminfo)
bl32_meminfo->free_size = bl32_meminfo->free_size =
(TSP_SEC_MEM_BASE + TSP_SEC_MEM_SIZE) - BL32_BASE; (TSP_SEC_MEM_BASE + TSP_SEC_MEM_SIZE) - BL32_BASE;
} }
#endif /* BL32_BASE */
/*******************************************************************************
* Before calling this function BL33 is loaded in memory and its entrypoint
* is set by load_image. This is a placeholder for the platform to change
* the entrypoint of BL33 and set SPSR and security state.
* On ARM standard platforms we only set the security state of the entrypoint
******************************************************************************/
void bl2_plat_set_bl33_ep_info(image_info_t *image,
entry_point_info_t *bl33_ep_info)
{
SET_SECURITY_STATE(bl33_ep_info->h.attr, NON_SECURE);
bl33_ep_info->spsr = arm_get_spsr_for_bl33_entry();
}
/******************************************************************************* /*******************************************************************************
* Populate the extents of memory available for loading BL33 * Populate the extents of memory available for loading BL33
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment