diff options
Diffstat (limited to 'plat/arm/common/arm_bl2_setup.c')
-rw-r--r-- | plat/arm/common/arm_bl2_setup.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/plat/arm/common/arm_bl2_setup.c b/plat/arm/common/arm_bl2_setup.c index c90e93cd8..26af38344 100644 --- a/plat/arm/common/arm_bl2_setup.c +++ b/plat/arm/common/arm_bl2_setup.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015-2020, ARM Limited and Contributors. All rights reserved. + * Copyright (c) 2015-2021, ARM Limited and Contributors. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ @@ -14,6 +14,7 @@ #include <common/debug.h> #include <common/desc_image_load.h> #include <drivers/generic_delay_timer.h> +#include <drivers/partition/partition.h> #include <lib/fconf/fconf.h> #include <lib/fconf/fconf_dyn_cfg_getter.h> #ifdef SPD_opteed @@ -70,6 +71,12 @@ void arm_bl2_early_platform_setup(uintptr_t fw_config, /* Initialise the IO layer and register platform IO devices */ plat_arm_io_setup(); + + /* Load partition table */ +#if ARM_GPT_SUPPORT + partition_init(GPT_IMAGE_ID); +#endif /* ARM_GPT_SUPPORT */ + } void bl2_early_platform_setup2(u_register_t arg0, u_register_t arg1, u_register_t arg2, u_register_t arg3) @@ -86,6 +93,11 @@ void bl2_early_platform_setup2(u_register_t arg0, u_register_t arg1, u_register_ void bl2_plat_preload_setup(void) { arm_bl2_dyn_cfg_init(); + +#if ARM_GPT_SUPPORT && !PSA_FWU_SUPPORT + /* Always use the FIP from bank 0 */ + arm_set_fip_addr(0U); +#endif /* ARM_GPT_SUPPORT && !PSA_FWU_SUPPORT */ } /* |