diff --git a/include/bl2/bl2.h b/include/bl2/bl2.h index b028faa..fffe5a6 100644 --- a/include/bl2/bl2.h +++ b/include/bl2/bl2.h @@ -32,11 +32,6 @@ #define __BL2_H__ /****************************************** - * Data declarations - *****************************************/ -extern unsigned long long bl2_entrypoint; - -/****************************************** * Forward declarations *****************************************/ struct meminfo; diff --git a/include/bl31/bl31.h b/include/bl31/bl31.h index 744dcc2..ef32568 100644 --- a/include/bl31/bl31.h +++ b/include/bl31/bl31.h @@ -33,11 +33,6 @@ #include -/******************************************************************************* - * Data declarations - ******************************************************************************/ -extern unsigned long bl31_entrypoint; - /****************************************** * Forward declarations *****************************************/ diff --git a/plat/fvp/platform.h b/plat/fvp/platform.h index 36a3b33..0e3de5f 100644 --- a/plat/fvp/platform.h +++ b/plat/fvp/platform.h @@ -423,19 +423,6 @@ /******************************************************************************* * Function and variable prototypes ******************************************************************************/ -unsigned long *bl1_normal_ram_base; -unsigned long *bl1_normal_ram_len; -unsigned long *bl1_normal_ram_limit; -unsigned long *bl1_normal_ram_zi_base; -unsigned long *bl1_normal_ram_zi_len; - -unsigned long *bl1_coherent_ram_base; -unsigned long *bl1_coherent_ram_len; -unsigned long *bl1_coherent_ram_limit; -unsigned long *bl1_coherent_ram_zi_base; -unsigned long *bl1_coherent_ram_zi_len; -unsigned long warm_boot_entrypoint; - void bl1_plat_arch_setup(void); void bl2_plat_arch_setup(void); void bl31_plat_arch_setup(void); diff --git a/services/std_svc/psci/psci_common.c b/services/std_svc/psci/psci_common.c index 025d8b4..c61e87a 100644 --- a/services/std_svc/psci/psci_common.c +++ b/services/std_svc/psci/psci_common.c @@ -45,13 +45,11 @@ /******************************************************************************* * Arrays that contains information needs to resume a cpu's execution when woken - * out of suspend or off states. 'psci_ns_einfo_idx' keeps track of the next - * free index in the 'psci_ns_entry_info' & 'psci_suspend_context' arrays. Each - * cpu is allocated a single entry in each array during startup. + * out of suspend or off states. Each cpu is allocated a single entry in each + * array during startup. ******************************************************************************/ suspend_context_t psci_suspend_context[PSCI_NUM_AFFS]; ns_entry_info_t psci_ns_entry_info[PSCI_NUM_AFFS]; -unsigned int psci_ns_einfo_idx; /******************************************************************************* * Grand array that holds the platform's topology information for state @@ -62,16 +60,6 @@ __attribute__ ((section("tzfw_coherent_mem"))); /******************************************************************************* - * In a system, a certain number of affinity instances are present at an - * affinity level. The cumulative number of instances across all levels are - * stored in 'psci_aff_map'. The topology tree has been flattenned into this - * array. To retrieve nodes, information about the extents of each affinity - * level i.e. start index and end index needs to be present. 'psci_aff_limits' - * stores this information. - ******************************************************************************/ -aff_limits_node_t psci_aff_limits[MPIDR_MAX_AFFLVL + 1]; - -/******************************************************************************* * Pointer to functions exported by the platform to complete power mgmt. ops ******************************************************************************/ const plat_pm_ops_t *psci_plat_pm_ops; diff --git a/services/std_svc/psci/psci_private.h b/services/std_svc/psci/psci_private.h index 1210b7e..747a2d4 100644 --- a/services/std_svc/psci/psci_private.h +++ b/services/std_svc/psci/psci_private.h @@ -86,12 +86,8 @@ ******************************************************************************/ extern suspend_context_t psci_suspend_context[PSCI_NUM_AFFS]; extern ns_entry_info_t psci_ns_entry_info[PSCI_NUM_AFFS]; -extern unsigned int psci_ns_einfo_idx; -extern aff_limits_node_t psci_aff_limits[MPIDR_MAX_AFFLVL + 1]; extern const plat_pm_ops_t *psci_plat_pm_ops; extern aff_map_node_t psci_aff_map[PSCI_NUM_AFFS]; -extern afflvl_power_on_finisher_t psci_afflvl_off_finish_handlers[]; -extern afflvl_power_on_finisher_t psci_afflvl_sus_finish_handlers[]; /******************************************************************************* * SPD's power management hooks registered with PSCI diff --git a/services/std_svc/psci/psci_setup.c b/services/std_svc/psci/psci_setup.c index b958fa2..a1587b7 100644 --- a/services/std_svc/psci/psci_setup.c +++ b/services/std_svc/psci/psci_setup.c @@ -48,6 +48,22 @@ static cpu_context_t psci_ns_context[PLATFORM_CORE_COUNT]; /******************************************************************************* + * In a system, a certain number of affinity instances are present at an + * affinity level. The cumulative number of instances across all levels are + * stored in 'psci_aff_map'. The topology tree has been flattenned into this + * array. To retrieve nodes, information about the extents of each affinity + * level i.e. start index and end index needs to be present. 'psci_aff_limits' + * stores this information. + ******************************************************************************/ +static aff_limits_node_t psci_aff_limits[MPIDR_MAX_AFFLVL + 1]; + +/******************************************************************************* + * 'psci_ns_einfo_idx' keeps track of the next free index in the + * 'psci_ns_entry_info' & 'psci_suspend_context' arrays. + ******************************************************************************/ +static unsigned int psci_ns_einfo_idx; + +/******************************************************************************* * Routines for retrieving the node corresponding to an affinity level instance * in the mpidr. The first one uses binary search to find the node corresponding * to the mpidr (key) at a particular affinity level. The second routine decides